一、搞點資料看看,電路圖要搞到
之所以推薦下載這個壓縮檔,是因為里面有一個非常好的說明文件:
這個說明文件非常棒,介紹了每個目錄的內容,為制作這個說明文件的小哥哥點贊!!!
電路圖在這個壓縮檔有:
1. LED沒有直接連到MCU引腳,需要準備連接導線;
2. 燒錄調試接口貌似ST-LINK,準備一個高仿ST-LINK燒錄器即可;
二、搭建環境,芯片的PACK安裝
由于我的燒錄器是ST-LINK,在配置中選擇即可:
選擇一下芯片算法,64K滴:
三、搞定代碼,點亮屏幕
void GPIO_Toggle_INIT(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
GPIO_Toggle_INIT();
while(1)
{
Delay_Ms(500);
PAout(0) ^= (1<<0);
}
}
四、學習將視頻轉GIF,看著方便
為了方便和朋友們交流,將源代碼上傳上來,下載請點擊閱讀原文。
2. 代碼風格和ST一樣一樣滴,上手也快
3. 外設功能和ST有細微差異,看過手冊也都能明白
4. 這塊開發板的其它功能,待后續慢慢搞,后面準備搞個U盤自動更新功能,哈哈
習慣了STC和Arduino的串口下載,對于arm32-M3指令集的國產芯片CH32F103C8T6,也在摸索著使用串口下載。在開發板的包里,干貨滿滿,但是手頭上沒有SWD接口的編程器。找了資料,STM32F103是可以用串口下載的。前提是,你要連接好PA9(UART1_TX),以及PA10(UART1_RX)到USB-TLL轉接板,比如CH340G的小板。
另外,需要設置BOOT啟動的方式。跳線接法:BOOT1 -->GND, BOOT0-->VCC,這樣才會從芯片內的出廠固件內存引導啟動,這里相當于Arduino的BootLoader的功能。平常的接法是BOOT0-->GND,這是從Flash區運行啟動代碼,跳過了廠家代碼區。
2.硬件準備好后,需要軟件。下載WCH_ISP_tool(2.8)下載鏈接.
安裝好后,界面如圖。
注意要選擇CH32F1系列標簽,Keil MDK編譯器生成的Hex文件,需要再用戶程序文件框內選擇。
注意可以多試幾次,比如插拔USB轉串口小板。還有當出現“解除寫保護”,需要先點擊“解除保護”按鈕。之后再點擊下載。
4.測試UART_Printf串口打印功能
開發板的串口調試功能可以方便的輸出一些具體的信息,作為程序運行的重要參考。這里我測試了math.h的正弦函數計算功能。算是發揮一下32位CPU的優勢。想起來計算氫彈的理論的501機,每秒不過幾十萬次加法運算。這個機子已經遠遠超過了當年的龐然大物。
測試的源碼:
main.c
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200); /* printf using USART1 */
printf("SystemClk:%d\r\n",SystemCoreClock);
printf("This is printf example\r\n");
printf("sin(pi/3)=%f",sin(PI/3));
while(1)
{
}
}
附閱讀材料:中國計算機60年國產計算機前史
點燈需要注意的是,led小燈沒有連接到mcu的引腳上,需要自己用杜邦線連接一下
代碼也很簡單,有stm32經驗的很容易
/