【硬件工具】
1、CW32L031C8小藍(lán)板
2、Sht30寸溫濕度計(jì)
【編程環(huán)境】
1、ubuntu20
2、Vscode
【編譯環(huán)境】
Arm-gcc
【下載調(diào)試】
Wch-link+pyocd+gdb
【實(shí)現(xiàn)步驟】
1、復(fù)制一份uart的工程到新的文件夾:
lugl@lugl-virtual-machine:~/CW32L$ sudo cp -r cw32l031_uart_iqr cw32l031_sht30
[sudo] lugl 的密碼:
lugl@lugl-virtual-machine:~/CW32L$ ls
cw32l031_sht30 cw32l083_gcc MRS_Toolchain_Linux_x64_V1.50.tar.xz
cw32l031_uart cw32l083_gcc.zip
cw32l031_uart_iqr MRS
2、修改文件夾讀寫權(quán)限:
lugl@lugl-virtual-machine:~/CW32L$ chmod 777 -R cw32l031_sht30
3、用vscode打開文件夾。在User目錄下面新建sht30.c、sht30.h,myiic.h、myiic.c
4、這里的我們選用PB10、PB11為IIC的SCL與SDA,創(chuàng)建模擬的IIC。
5、創(chuàng)建sht30的命令發(fā)送與CRC程序。(代碼見附件,如果發(fā)帖可以復(fù)制主要代碼展示)
6、調(diào)整主程序代碼如下:
int main(void)
{
int t[6];
uint16_t h[6];
LED_Init();
LogInit();
SHT30_Init();
USART_ITConfig(CW_UART1, USART_IT_RC, ENABLE);
InitTick(24000000ul); //初始化SysTick
// 開啟兩線調(diào)試接口
RCC_SWDIO_Config(RCC_SYSCTRL_SWDIOEN);
printf("start
");
while (1)
{
SHT30_Read_Humiture(t,h);
printf("temp: %d.%d
", t[0]/10, t[0]%10);
printf("humi: %d.%d
", h[0]/10, t[0]%10);
GPIO_TogglePin(CW_GPIOC, GPIO_PIN_13);
SysTickDelay(500);
}
return 0;
}
編譯并下載:
lugl@lugl-virtual-machine:~/CW32L/cw32l031_sht30/cw32l031_gcc$ make flash
-e Start pyOCD
0000822 I Loading /home/lugl/CW32L/cw32l031_sht30/cw32l031_gcc/build_exec/template.elf [load_cmd]
[==================================================] 100%
0002781 I Erased 0 bytes (0 sectors), programmed 0 bytes (0 pages), skipped 20480 bytes (40 pages) at 10.22 kB/s [loader]
實(shí)現(xiàn)的效果:
-
調(diào)試
+關(guān)注
關(guān)注
7文章
578瀏覽量
33936 -
Ubuntu
+關(guān)注
關(guān)注
5文章
563瀏覽量
29756 -
vscode
+關(guān)注
關(guān)注
1文章
155瀏覽量
7711
發(fā)布評論請先 登錄
相關(guān)推薦
評論