2020年3月22日 星期日

[BT/BLE] Beacon/Advertising 藍芽廣播介紹

BLE(Bluetooth Low Energy)的廣播模式,也稱Advertising,少許人稱broadcast.

Google稱為Eddystone, Apple稱為Beacon.
雖然名字不同,但他們都是類似的東西,都是按照BLE的Advertising 格式所構成的.

需要文件載點:
Core Specification and Core Specification Supplement
Eddystone Protocol Specification
iBeacon




2020年3月18日 星期三

[C] 指標

&:取址(reference operator), address of ... (eq.&a:address of a)
*:取值(dereference operator),value of ... (eq.*b:value of b)


各種用法解說:
char *ptr;  //char表示point指向變數的類型,唸做:ptr is a pointer to char

char p[5]; // p is a 5-element array of char
char *p[5]; // p is a 5-element array of pointer to char 
char (*p)[5]; // p is a pointer to a 5-element array of char

另一種解釋
int *ptr[10];
This is an array of 10 int* pointers

int (*ptr)[10];
This is a pointer to an array of 10 int


typedef void (*func)(char);
func是個指標,指向某個函式,而這個涵式有一個資料型態為char的引述,回傳值為void


示意圖:



2020年3月16日 星期一

[C] 讀寫存取.txt.bin

fopen
不採用二進制方式打開,fopen(filename, "r"),只要文件中有一字節為1A,就會停止讀取.如果用fopen(filename,"rb")就不會出現此問題.

rb是只讀取二進位文件:
r:read, b:binary

fseek
很重要,有時候讀不到長度會資料是這部分設定錯誤,意思是游標的位置.


2020年3月3日 星期二

[STM32] STM32CUBE教學

ST出了兩套非常方便實用且免費的工具


●STM32Cube_MX 
https://www.st.com/en/development-tools/stm32cubemx.html
可用選單方式建立STM32的周邊硬體程式.
如下圖假設您今天要UART功能,只要在STM32Cube_MX 的圖形介面中點一點按一按就能產生此功能的程式了.
















STM32CubeIDE
https://www.st.com/en/development-tools/stm32cubeide.html
結合STM32Cube_MX和Atollic編譯器所構成的,其是使用GCC compiler,所以效率比Keil C和IAR差,但是免費,可以提供給不想花錢買Keil C或IAR的人使用.