0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【南京中科微CSM32RV20開發(fā)板試用體驗】+1-GPIO口串口的使用

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-11-30 10:50 ? 次閱讀
本文來源電子發(fā)燒友社區(qū),作者:盧松濤, 帖子地址:https://bbs.elecfans.com/jishu_2249212_1_1.html

新建的項目有很多功能的參考用法demo紅綠藍(lán)色LED
///----Chapter 5 GPIO Test Init ---------------------------------------------------------------------------------
GPIO_MODE_Init(GPIOA,PIN8,GPIO_MODE_OUTPUT); //GPIO 模式
GPIO_MODE_Init(GPIOA,PIN10,GPIO_MODE_OUTPUT); //GPIO 模式
GPIO_MODE_Init(GPIOA,PIN12,GPIO_MODE_OUTPUT); //GPIO 模式
demoUART
///---- Chapter 15 UART Test Init -------------------------------------------------------------------------------
//uint8_t upack1[20] = {0,1,2,3,4,5,6,7,8,9};
//uint8_t upack2[20] = {0,1,2,3,4,5,6,7,8,9};
//uint8_t upack3[20] = {0,1,2,3,4,5,6,7,8,9};
//uint8_t upack4[20] = {10,1,2,3,4,5,6,7,8,9};

//UART_Init_case1(UART2);//非中斷模式
//UART_Init_case1(UART3);//非中斷模式
//UART_Init_case1(UART4);//非中斷模式

UART_Init_IT_case1(UART1);//中斷模式
//UART_Init_IT_case1(UART4);//中斷模式
Interrupt_Enable(UART1_int_ID);//CLIC使能單個中斷
UART1->CTRL |= 0x00000001U;//清除中斷標(biāo)志位,防止開機(jī)先進(jìn)一次中斷
//Interrupt_Enable(UART4_int_ID);//CLIC使能單個中斷

SYS_Interrupt_Enable();//CLIC開總中斷
//printf("uart init:rn");

串口控制a8
GPIO_Write(GPIOA,PIN8,GPIO_RESET);
10000ms a10
GPIO_Toggle(GPIOA,PIN10); //GPIO 翻轉(zhuǎn)









  1. #include "headfile.h"
  2. void mp_receive_data(uint8_t *buf, uint16_t *len)
  3. {
  4. uint8_t rxlen = UART1_RX_CNT;
  5. uint16_t i = 0;
  6. *len = 0; //默認(rèn)為0
  7. Delay32M_ms(10); //等待40ms,連續(xù)超過10ms沒有接收到一個數(shù)據(jù),則認(rèn)為接收結(jié)束
  8. if (rxlen == UART1_RX_CNT && rxlen) //接收到了數(shù)據(jù),且接收完成了
  9. {
  10. for (i = 0; i < rxlen; i++)
  11. {
  12. buf[i] = uart_dev.rxbuf[i];
  13. }
  14. *len = UART1_RX_CNT; //記錄本次數(shù)據(jù)長度
  15. UART1_RX_CNT = 0; //清零
  16. uart_dev.frameok=1; //標(biāo)記完成一幀數(shù)據(jù)接收
  17. // getData=0;//數(shù)據(jù)接收完成,標(biāo)志位清零
  18. }
  19. }
  20. #define Max_Column 128
  21. uint8_t ReceiveBuff[RECV_LEN];
  22. int main(void)
  23. {
  24. uint16_t rlen=0;
  25. uart_dev.rxlen=0;
  26. ///----System Init ---------------------------------------------------------------------------------------------
  27. CLIC_Init();//系統(tǒng)中斷配置
  28. System_Clock_Init();//系統(tǒng)時鐘初始化
  29. ///----Chapter 3 LowPower Test Init ---------------------------------------------------------------------------------
  30. //低功耗測功耗需要IO不能懸空
  31. //Delay32M_ms(5000);
  32. //LowPower_Config_case1();//所有IO設(shè)置為輸入,下拉
  33. //LowPower_Config_case2();//所有IO設(shè)置為輸入,上拉
  34. //使用外部中斷喚醒
  35. //GPIO_EXIT_Init_case1(GPIOA, PIN2);//檢測高電平
  36. //Interrupt_Level(EXIT2_int_ID, INT_LEVEL0);//CLIC設(shè)置中斷搶占級別
  37. //Interrupt_Enable(EXIT2_int_ID);//CLIC使能EXIT中斷
  38. //SYS_Interrupt_Enable();//CLIC開總中斷
  39. //配置不同低功耗模式
  40. //System_Halt();//待機(jī)模式 halt1
  41. //System_Sleep();//睡眠模式 halt2
  42. //System_Powerdown();//掉電模式 powerdown1
  43. //System_DeepPwd();//掉電模式 powerdown2
  44. ///----Chapter 5 GPIO Test Init ---------------------------------------------------------------------------------
  45. GPIO_MODE_Init(GPIOA,PIN8,GPIO_MODE_OUTPUT); //GPIO 模式
  46. GPIO_MODE_Init(GPIOA,PIN10,GPIO_MODE_OUTPUT); //GPIO 模式
  47. GPIO_MODE_Init(GPIOA,PIN12,GPIO_MODE_OUTPUT); //GPIO 模式
  48. //GPIO_MODE_Init(GPIOA,PIN14,GPIO_MODE_OUTPUT); //GPIO 模式
  49. //GPIO_MODE_Init(GPIOA,PIN15,GPIO_MODE_OUTPUT); //GPIO 模式
  50. //GPIO_Write(GPIOA,PIN8,GPIO_SET); //GPIO 輸出
  51. //GPIO_Write(GPIOA,PIN10,GPIO_SET); //GPIO 輸出
  52. //GPIO_Write(GPIOA,PIN12,GPIO_SET); //GPIO 輸出
  53. //GPIO_Write(GPIOA,PIN14,GPIO_RESET); //GPIO 輸出
  54. //GPIO_Write(GPIOA,PIN15,GPIO_RESET); //GPIO 輸出
  55. //GPIO_Toggle(GPIOA,PIN15); //GPIO 翻轉(zhuǎn)
  56. //GPIO_MODE_Init(GPIOA,PIN15,GPIO_MODE_INTPUT); //GPIO 模式
  57. for(uint8_t i=0;i<10;i++)
  58. {
  59. GPIO_Toggle(GPIOA,PIN8); //GPIO 翻轉(zhuǎn)
  60. Delay32M_ms(100);
  61. }
  62. ///---- Chapter 6 EXIT Test Init -------------------------------------------------------------------------------------
  63. //GPIO_EXIT_Init_case1(GPIOA, PIN2);//檢測高電平
  64. //GPIO_EXIT_Init_case2(GPIOA, PIN2);//檢測低電平
  65. //GPIO_EXIT_Init_case3(GPIOA, PIN2);//檢測上升沿
  66. //GPIO_EXIT_Init_case4(GPIOA, PIN2);//檢測下降沿
  67. //Interrupt_Level(EXIT2_int_ID, INT_LEVEL0);//CLIC設(shè)置中斷搶占級別
  68. //Interrupt_Enable(EXIT2_int_ID);//CLIC使能EXIT中斷
  69. //載波檢測中斷
  70. //CAW_Init();//載波檢測
  71. //Interrupt_Enable(CAW_int_ID);//CLIC使能中斷
  72. //SYS_Interrupt_Enable();//CLIC開總中斷
  73. ///---- Chapter 7 RTC Test Init --------------------------------------------------------------------------------------
  74. //RTC_Init_case1();
  75. ///---- Chapter 8 IWDG Test Init -------------------------------------------------------------------------------------
  76. //IWDG_Init(9000); //配置看門狗計數(shù)值(時鐘頻率3K)
  77. //Delay32M_ms(1000);
  78. //IWDG_Start(); //啟動看門狗
  79. //IWDG_Refresh(); //喂狗
  80. ///---- Chapter 9timer Test Init ------------------------------------------------------------------------------------
  81. //GPIO_MODE_Init(GPIOB,PIN11,GPIO_MODE_OUTPUT); //GPIO 模式
  82. //GPIO_MODE_Init(GPIOA,PIN9,GPIO_MODE_OUTPUT);
  83. //GPIO_MODE_Init(GPIOA,PIN11,GPIO_MODE_OUTPUT);
  84. //GPIO_MODE_Init(GPIOA,PIN13,GPIO_MODE_OUTPUT);
  85. //外設(shè)配置
  86. //Timer1_UpCounting_Mode_Init();//向上計數(shù)
  87. //Timer1_6StepPWM_Mode_Init();//6stepPWM輸出
  88. //Timer2_UpCounting_Mode_Init();//向上計數(shù)
  89. //Timer2_DownCounting_Mode_Init();//向下計數(shù)
  90. //Timer2_ExternalClock_Mode_Init();//外部時鐘
  91. //Timer2_InputCapture_Mode_Init();//輸入捕獲
  92. //Timer2_PWM_InputCapture_Mode_Init();//PWM輸入捕獲
  93. //Timer2_Input_XOR_Mode_Init();//輸入異或
  94. //Timer2_PWM_Mode_Init();//PWM輸出
  95. //Timer2_6StepPWM_Mode_Init();//6stepPWM輸出
  96. //設(shè)置中斷優(yōu)先級
  97. //Interrupt_Level(TIMER1_updata_int_ID, INT_LEVEL1);//CLIC設(shè)置中斷搶占級別
  98. //使能外設(shè)中斷
  99. //Interrupt_Enable(TIMER1_break_int_ID);//CLIC使能中斷
  100. //Interrupt_Enable(TIMER1_updata_int_ID);//CLIC使能中斷
  101. //Interrupt_Enable(TIMER1_capture_compare_int_ID);//CLIC使能中斷
  102. //Interrupt_Enable(TIMER1_trigger_comm_int_ID);//CLIC使能中斷
  103. //Interrupt_Enable(TIMER2_break_int_ID);//CLIC使能中斷
  104. //Interrupt_Enable(TIMER2_updata_int_ID);//CLIC使能中斷
  105. //Interrupt_Enable(TIMER2_capture_compare_int_ID);//CLIC使能中斷
  106. //Interrupt_Enable(TIMER2_trigger_comm_int_ID);//CLIC使能中斷
  107. //使能系統(tǒng)總中斷
  108. //SYS_Interrupt_Enable();//CLIC開總中斷
  109. ///---- Chapter 10 WUP Test Init -------------------------------------------------------------------------------------
  110. //GPIO_MODE_Init(GPIOA,PIN2,GPIO_MODE_OUTPUT);
  111. //GPIO_MODE_Init(GPIOA,PIN3,GPIO_MODE_OUTPUT);
  112. //WUP_Init_case1(9000);//設(shè)置中斷周期,使能WUP中斷
  113. //Interrupt_Enable(WUP_int_ID);//CLIC使能中斷
  114. //SYS_Interrupt_Enable();//CLIC開總中斷
  115. //配置不同低功耗模式
  116. //System_Halt();//待機(jī)模式 halt1
  117. //System_Sleep();//睡眠模式 halt2
  118. //System_Powerdown();//掉電模式 powerdown1
  119. //System_DeepPwd();//掉電模式 powerdown2
  120. ///---- Chapter 11 ADC Test Init -------------------------------------------------------------------------------------
  121. ///---- Chapter 12 I2C Test Init -------------------------------------------------------------------------------------
  122. //I2C_Init_case2();//ready中斷模式
  123. //I2C_Init_case3();//error中斷模式
  124. //I2C_Init_case4();//ready & error中斷模式
  125. //Interrupt_Enable(I2C_ready_int_ID);//CLIC使能i2c_ready中斷
  126. //Interrupt_Enable(I2C_error_int_ID);//CLIC使能i2c_error中斷
  127. //SYS_Interrupt_Enable();//CLIC開總中斷
  128. ///---- Chapter 13 SPI1 Test Init ------------------------------------------------------------------------------------
  129. //uint8_t sTxpack[10] = {0,1,2,3,4,5,6,7,8,9};
  130. //uint8_t sRxpack[10] = {0,1,2,3,4,5,6,7,8,9};
  131. //uint8_t REG_Data;
  132. //SPI1 Init Test
  133. //SPI_Init_case1(SPI1);//非中斷模式
  134. //SPI1_CSN_Init_case1();//CFG: CE-GPIO7,CSN-GPIO8
  135. //SPI_Init_case2(SPI1);//中斷模式
  136. //Interrupt_Enable(SPI1_int_ID);//CLIC使能單個中斷
  137. //SPI2 Init Test
  138. //SPI_Init_case1(SPI2);//非中斷模式
  139. //SPI2_CSN_Init_case1();//CFG: CE-GPIO7,CSN-GPIO8
  140. //SPI_Init_case2(SPI2);//中斷模式
  141. //Interrupt_Enable(SPI2_int_ID);//CLIC使能單個中斷
  142. ///---- Chapter 15 UART Test Init -------------------------------------------------------------------------------
  143. //uint8_t upack1[20] = {0,1,2,3,4,5,6,7,8,9};
  144. //uint8_t upack2[20] = {0,1,2,3,4,5,6,7,8,9};
  145. //uint8_t upack3[20] = {0,1,2,3,4,5,6,7,8,9};
  146. //uint8_t upack4[20] = {10,1,2,3,4,5,6,7,8,9};
  147. //UART_Init_case1(UART2);//非中斷模式
  148. //UART_Init_case1(UART3);//非中斷模式
  149. //UART_Init_case1(UART4);//非中斷模式
  150. UART_Init_IT_case1(UART1);//中斷模式
  151. //UART_Init_IT_case1(UART4);//中斷模式
  152. Interrupt_Enable(UART1_int_ID);//CLIC使能單個中斷
  153. UART1->CTRL |= 0x00000001U;//清除中斷標(biāo)志位,防止開機(jī)先進(jìn)一次中斷
  154. //Interrupt_Enable(UART4_int_ID);//CLIC使能單個中斷
  155. SYS_Interrupt_Enable();//CLIC開總中斷
  156. //printf("uart init:rn");
  157. ///---- Chapter 16 LV Test Init --------------------------------------------------------------------------------------
  158. //LV_Init_case1(12);//設(shè)置低壓報警閾值
  159. //LV_Interrupt_Enable();//使能低壓報警中斷
  160. //Interrupt_Enable(LV_int_ID);//CLIC使能單個中斷
  161. //SYS_Interrupt_Enable();//CLIC開總中斷
  162. ///---- Chapter 17 RANDGEN Test Init ---------------------------------------------------------------------------------
  163. //uint32_t rand_data;
  164. ///---- Chapter 18 compare Test Init ---------------------------------------------------------------------------------
  165. //COPM1_Init();//COPM1
  166. //Interrupt_Enable(COMP1_int_ID);//CLIC使能單個中斷
  167. //COPM2_Init();//COPM2
  168. //Interrupt_Enable(COMP2_int_ID);//CLIC使能單個中斷
  169. //COPM3_Init();//COPM3
  170. //Interrupt_Enable(COMP3_int_ID);//CLIC使能單個中斷
  171. //SYS_Interrupt_Enable();//CLIC開總中斷
  172. ///---- Chapter 22 flash Test Init ----------------------------------------------------------------------------------
  173. //NVR_RW_Test();//NVR read and write test
  174. //Flash_RW_Test();
  175. ///---- 系統(tǒng)總中斷控制 -------------------------------------------------------------------------------------------------
  176. //SYS_Interrupt_Enable();//CLIC開總中斷
  177. //SYS_Interrupt_Disable();//CLIC關(guān)總中斷
  178. adc_pack[0]=read_csr(mcycle);
  179. adc_pack[1]=read_csr(mcycle);
  180. ee_printf("nHello CSM32RV20:n");
  181. ee_printf("mcycle:%d n",read_csr(mcycle));//比如mcycle這一CSR用于處理器運行的時鐘周期計數(shù)
  182. ee_printf("read_csr(mcycle):%d n",adc_pack[1]-adc_pack[0]);//比如mcycle這一CSR用于處理器運行的時鐘周期計數(shù)
  183. ee_printf("CMU->OSC_SR:%x n",CMU->OSC_SR );
  184. if(CMU->OSC_SR==210 ) ee_printf("CMU->OSC_SR:210,OSC 時鐘已穩(wěn)定,RCOSC 時鐘已穩(wěn)定,:OSC 在為 MCU 提供時鐘;OSC 在為外設(shè)提供時鐘; n" );
  185. //printf("Hello CSM32RV20:rn");
  186. ee_printf("請輸入:on 或者off (開燈/關(guān)燈)rn");
  187. uint32_t rt_tick1 = rt_tick_get();
  188. uint32_t rt_tick2 = rt_tick_get();
  189. Delay32M_ms(1000);
  190. // OLED_Light();
  191. // OLED_DrawBMP(0,0,128,8,BAD_APPLE);
  192. while(1)
  193. {
  194. mp_receive_data(ReceiveBuff, &rlen);
  195. if(uart_dev.frameok==1)//如果接收到數(shù)據(jù)
  196. {
  197. ee_printf("收到數(shù)據(jù):");
  198. Uart_Send(UART1,(uint8_t *)ReceiveBuff,rlen);
  199. ee_printf("rn");
  200. uint8_t aton= (uint8_t)ReceiveBuff[0];
  201. uint32_t data=0;
  202. switch (aton) {
  203. case 111://"o"
  204. if(1==rlen) break;
  205. if(ReceiveBuff[1]=='n')
  206. {
  207. GPIO_Write(GPIOA,PIN8,GPIO_RESET);
  208. ee_printf("燈開了!rn");
  209. }
  210. else if((ReceiveBuff[1]=='f')&&(ReceiveBuff[2]=='f'))
  211. {
  212. GPIO_Write(GPIOA,PIN8,GPIO_SET);
  213. ee_printf("關(guān)燈了!rn");
  214. }
  215. else
  216. {
  217. ee_printf("請輸入:on 或者off (開燈/關(guān)燈)rn");
  218. }
  219. break;
  220. default:
  221. break;
  222. }
  223. uart_dev.frameok=0;
  224. uart_dev.rxlen=0;
  225. }
  226. if( rt_tick_get()%1000==0) ee_printf("time is %u s n",rt_tick_get()/1000);
  227. if(!( rt_tick_get()- rt_tick1< 10000)){
  228. rt_tick1 = rt_tick_get() ;
  229. GPIO_Toggle(GPIOB,PIN8);
  230. GPIO_Toggle(GPIOA,PIN10); //GPIO 翻轉(zhuǎn)
  231. // ee_printf("mcycle:%u n",read_csr(mcycle));
  232. ee_printf("rt_tick_get:%u n", rt_tick_get());
  233. ee_printf("RTC_MTIME->mtime:%lu ",RTC_MTIME->mtime);
  234. // ee_printf("type?RTC_MTIME->mtime:%lu n",type(RTC_MTIME->mtime));
  235. ee_printf("RTC_MTIME->mtime0-7B:");
  236. for (uint8_t i = 0; i < 8; i++)
  237. {
  238. ee_printf("%x ",_REG8(0x0200bff8UL,i));
  239. }
  240. ee_printf("nRTC_MTIME->mtime:%u n",_REG32(0x0200bff8UL,4));
  241. ee_printf("RTC_MTIMECMP->mtimecmp:%lu n",RTC_MTIMECMP->mtimecmp);
  242. // ee_printf("type?RTC_MTIME->mtime:%lu n",type(RTC_MTIMECMP->mtimecmp));
  243. ee_printf("->?RTC_MTIME->mtime:%p n",RTC_MTIMECMP->mtimecmp);
  244. ee_printf("RTC_MTIMECMP->mtimecmp0-7B:");
  245. for (uint8_t i = 0; i < 8; i++)
  246. {
  247. ee_printf("%x ",_REG8(0x02004000UL,i));
  248. }
  249. ee_printf(" n");
  250. }
  251. // Delay32M_ms(500);
  252. //Delay16M_ms(500);
  253. //Delay16M_us(500000);
  254. //GPIO_Toggle(GPIOA,PIN15);
  255. //printf("main:rn");
  256. ///---- Chapter 6 EXIT test ---------------------------------------------------------------------------------
  257. //delay16M_ms(500);
  258. //GPIO_Toggle(GPIOA,PIN15);
  259. ///---- Chapter 8 IWDG test ---------------------------------------------------------------------------------
  260. //IWDG_Refresh();
  261. //delay16M_ms(500);
  262. //GPIO_Toggle(GPIOA,PIN15);
  263. ///---- Chapter 9 Timer test --------------------------------------------------------------------------------
  264. //---- soft break --------------------------------------------------------------------------------------
  265. //delay16M_ms(100);
  266. //TIMER2->BDTR |= 1 <<15;//BDTR[15]-MOE-主輸出使能:0-關(guān)閉,1-使能
  267. //delay16M_ms(100);
  268. //TIMER2->EGR |= 1 <<7;//EGR[7]-BG-產(chǎn)生剎車事件
  269. //---- soft COM ----------------------------------------------------------------------------------------
  270. //delay16M_ms(100);
  271. //TIMER2->EGR = 1 <<5;//EGR[5]-COMG-捕獲/比較事件,產(chǎn)生控制更新
  272. //---- generate oxr ------------------------------------------------------------------------------------
  273. /*
  274. Delay16M_ms(10);//1
  275. GPIO_Write(GPIOA,PIN9,GPIO_SET);
  276. GPIO_Write(GPIOA,PIN11,GPIO_RESET);
  277. GPIO_Write(GPIOA,PIN13,GPIO_SET);
  278. Delay16M_ms(10);//2
  279. GPIO_Write(GPIOA,PIN9,GPIO_SET);
  280. GPIO_Write(GPIOA,PIN11,GPIO_RESET);
  281. GPIO_Write(GPIOA,PIN13,GPIO_RESET);
  282. Delay16M_ms(10);//3
  283. GPIO_Write(GPIOA,PIN9,GPIO_SET);
  284. GPIO_Write(GPIOA,PIN11,GPIO_SET);
  285. GPIO_Write(GPIOA,PIN13,GPIO_RESET);
  286. Delay16M_ms(10);//4
  287. GPIO_Write(GPIOA,PIN9,GPIO_RESET);
  288. GPIO_Write(GPIOA,PIN11,GPIO_SET);
  289. GPIO_Write(GPIOA,PIN13,GPIO_RESET);
  290. Delay16M_ms(10);//5
  291. GPIO_Write(GPIOA,PIN9,GPIO_RESET);
  292. GPIO_Write(GPIOA,PIN11,GPIO_SET);
  293. GPIO_Write(GPIOA,PIN13,GPIO_SET);
  294. Delay16M_ms(10);//6
  295. GPIO_Write(GPIOA,PIN9,GPIO_RESET);
  296. GPIO_Write(GPIOA,PIN11,GPIO_RESET);
  297. GPIO_Write(GPIOA,PIN13,GPIO_SET);
  298. */
  299. ///---- Chapter 11 ADC test ---------------------------------------------------------------------------------
  300. ///---- Chapter 12 I2C test ---------------------------------------------------------------------------------
  301. //I2C_Write(0x2d,0x55);//適用于非中斷模式
  302. //i2c_data = I2C_Read(0x2d);//適用于非中斷模式
  303. //printf("data:%xrn",i2c_data);
  304. //I2C_Write(0x2d,0xaa);//適用于非中斷模式
  305. //i2c_data = I2C_Read(0x2d);//適用于非中斷模式
  306. //printf("data:%xrn",i2c_data);
  307. //I2C_Write_IT(0x2d,0x55);//適用于中斷模式
  308. ///---- Chapter 13 SPI test --------------------------------------------------------------------------------
  309. //SPI1 Test
  310. //SPI_Transceive(SPI1,sTxpack,sRxpack,10);//非中斷模式
  311. //SPI1_RW_reg(WRITE_REG+0x05,0x53);//讀寫Si24R1寄存器
  312. //REG_Data = SPI1_RW_reg(READ_REG+0x05,0);//讀寫Si24R1寄存器
  313. //printf("rnREG5:%02x",REG_Data);
  314. //delay16M_ms(500);
  315. //SPI2 Test
  316. //SPI_Transceive(SPI2,sTxpack,sRxpack,10);//非中斷模式
  317. //SPI2_RW_reg(WRITE_REG+0x05,0x53);//讀寫Si24R1寄存器
  318. //REG_Data = SPI2_RW_reg(READ_REG+0x05,0);//讀寫Si24R1寄存器
  319. //printf("rnREG5:%02x",REG_Data);
  320. //delay16M_ms(500);
  321. ///---- Chapter 15 UART Test ------------------------------------------------------------------------------------
  322. //---- 非中斷模式數(shù)據(jù)回環(huán)測試 -------------------------------------------------------------------------------------
  323. //Uart_Reveive(UART1,upack1,10);//適用于非中斷發(fā)送模式
  324. //Uart_Send(UART1,upack1,10);//適用于非中斷發(fā)送模式
  325. //Uart_Reveive(UART2,upack2,10);//適用于非中斷發(fā)送模式
  326. //Uart_Send(UART2,upack2,10);//適用于非中斷發(fā)送模式
  327. //Uart_Reveive(UART3,upack3,10);//適用于非中斷發(fā)送模式
  328. //Uart_Send(UART3,upack3,10);//適用于非中斷發(fā)送模式
  329. //Uart_Reveive(UART4,upack4,10);//適用于非中斷發(fā)送模式
  330. //Uart_Send(UART4,upack4,10);//適用于非中斷發(fā)送模式
  331. //---- 中斷模式數(shù)據(jù)回環(huán)測試 --------------------------------------------------------------------------------------
  332. //UART1_putbuf(UART1_getbuf());
  333. //---- printf測試 ----------------------------------------------------------------------------------------
  334. //printf("Hellow-01234568789abcdefghijklmnopqrstuvwxyzrn");
  335. ///---- Chapter 17 RANDGEN test -----------------------------------------------------------------------------
  336. //rand_data = RAND_Get();//生成隨機(jī)數(shù)
  337. //printf("rand:0x%08x,%urn",rand_data,rand_data);
  338. //delay16M_ms(500);
  339. ///---- Chapter 18 COMPARE test -----------------------------------------------------------------------------
  340. //if(COMP1->irq&0x1)
  341. //{
  342. //GPIO_Toggle(GPIOA,PIN15);
  343. //COMP1->irq = 1;
  344. //}
  345. //delay16M_ms(10);
  346. }
  347. return 0;
  348. }
復(fù)制代碼


poYBAGIDXEWAeTSyAAJsoboURyY831.png

com:

Hello CSM32RV20:
mcycle:112549883
read_csr(mcycle):2
CMU->OSC_SR:d2
CMU->OSC_SR:210,OSC 時鐘已穩(wěn)定,RCOSC 時鐘已穩(wěn)定,:OSC 在為 MCU 提供時鐘;OSC 在為外設(shè)提供時鐘;
請輸入:on 或者off (開燈/關(guān)燈)

收到數(shù)據(jù):

rt_tick_get:11529
RTC_MTIME->mtime:36899472 RTC_MTIME->mtime0-7B:4a 4c 33 2 0 0 0 0
RTC_MTIME->mtime:0
RTC_MTIMECMP->mtimecmp:36934400
->?RTC_MTIME->mtime:0233b880
RTC_MTIMECMP->mtimecmp0-7B:0 3 34 2 0 0 0 0
val:6700avr:14062513 981.4mV 2108.0mV

time:0 day 0 hour' 0:16
rt_tick_get:21537
RTC_MTIME->mtime:68926545 RTC_MTIME->mtime0-7B:c fd 1c 4 0 0 0 0
RTC_MTIME->mtime:0
RTC_MTIMECMP->mtimecmp:68960000
->?RTC_MTIME->mtime:041c6480
RTC_MTIMECMP->mtimecmp0-7B:0 af 1c 4 0 0 0 0
收到數(shù)據(jù):on

燈開了!
rt_tick_get:61655
RTC_MTIME->mtime:197302775 RTC_MTIME->mtime0-7B:c8 dd c2 b 0 0 0 0
RTC_MTIME->mtime:0
RTC_MTIMECMP->mtimecmp:197337600
->?RTC_MTIME->mtime:0bc34780
RTC_MTIMECMP->mtimecmp0-7B:0 92 c3 b 0 0 0 0
time is 63 s
收到數(shù)據(jù):off

關(guān)燈了!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 南京中科微
    +關(guān)注

    關(guān)注

    0

    文章

    60

    瀏覽量

    729
  • CSM32RV20
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    204
收藏 人收藏

    評論

    相關(guān)推薦

    【RA-Eco-RA0E1-32PIN-V1.0開發(fā)板試用】點燈

    RA0E1開發(fā)板試用報告 試用單位 : 個人開發(fā)板 : RA0E1 一、背景 很榮幸獲得由電子發(fā)
    發(fā)表于 09-24 11:54

    【龍芯2K0300蜂鳥試用】龍芯2K0300蜂鳥開發(fā)板引腳定義及體驗開發(fā)板

    ospeed 9600 1 讀取串口數(shù)據(jù) cat /dev/ttyS1 以上內(nèi)容希望為想了解這塊開發(fā)板的朋友有所幫助。
    發(fā)表于 09-19 18:54

    【作品合集】龍芯2K0300蜂鳥開發(fā)板試用精選

    試用】龍芯2K0300蜂鳥開發(fā)板GPIO的驅(qū)動及使用 【龍芯2K0300蜂鳥試用】初了解龍芯2K0300蜂鳥
    發(fā)表于 09-10 18:17

    【龍芯2K0300蜂鳥試用試用開箱體驗及調(diào)試

    口: 試用開發(fā)板實物及配件如下: 龍芯2K0300蜂鳥 * 1 主播電池 * 1 USBTypec線 *
    發(fā)表于 09-08 12:08

    【龍芯2K0300蜂鳥試用】+龍芯2K0300蜂鳥開發(fā)板快速上手

    1. 前言 我非常感激社區(qū)和官方提供的這次開發(fā)板試用機(jī)會。這是一個難得的學(xué)習(xí)和實踐的機(jī)遇,尤其是在我對于這種新型架構(gòu)一直抱有濃厚興趣卻未曾深入了解的情況下。我?guī)е活w好奇和探索的心,準(zhǔn)備投身于這個
    發(fā)表于 08-04 14:19

    點擊參與米爾NXP i.MX 93開發(fā)板有獎試用

    米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開發(fā)板免費試用活動來啦~~米爾提供了3塊價值678元的MYD-LMX9X開發(fā)板發(fā)起試用活動您不僅可以免費體
    的頭像 發(fā)表于 06-13 08:02 ?429次閱讀
    點擊參與米爾NXP i.MX 93<b class='flag-5'>開發(fā)板</b>有獎<b class='flag-5'>試用</b>

    免費!NXP i.MX 93開發(fā)板有獎試用

    米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開發(fā)板免費試用活動來啦~~米爾提供了2塊價值678
    的頭像 發(fā)表于 05-23 08:01 ?635次閱讀
    免費!NXP i.MX 93<b class='flag-5'>開發(fā)板</b>有獎<b class='flag-5'>試用</b>

    【核桃派1B 開發(fā)板試用體驗】+GPIO測試篇

    GPIO是入手硬件的最佳點,在核桃派的開發(fā)板上配有40Pin GPIO(和樹莓派類似),見圖1所示。 該擴(kuò)展接口分為兩行,每行有20個排針。
    發(fā)表于 01-02 19:57

    【ELF 1開發(fā)板試用】板載資源測試4:體驗溫濕度傳感器

    、實驗?zāi)康?b class='flag-5'>1、熟悉ELF 1開發(fā)板基本操作。2、熟悉ELF 1開發(fā)板板載資源。三、實驗背景1、知
    發(fā)表于 12-18 11:09

    【先楫HPM5361EVK開發(fā)板試用體驗】GPIO使用,點燈

    (General Purpose Input/Output)來控制輸入輸出功能。 GPIO使用是HPM5361EVK開發(fā)板的一個重要特性,可以通過簡單的配置來實現(xiàn)對IO進(jìn)行控制。在試用
    發(fā)表于 12-10 16:57

    【ELF 1開發(fā)板試用】+ GPIO的使用

    ELF 1開發(fā)板配有功能擴(kuò)展的接口P2和P6,可選取其中的GPIO來進(jìn)行功能開發(fā)。 之所以這樣講,是因此
    發(fā)表于 12-08 11:28

    基于瑞芯 RV1103 芯片,微型 Linux 開發(fā)板LuckFox Pico Plus開發(fā)實踐

    LuckFox Pico 是一款基于瑞芯 RV1103 芯片具有高性價比的微型 Linux 開發(fā)板,旨在為開發(fā)者提供一個簡單且高效的開發(fā)
    發(fā)表于 11-30 14:10

    【ELF 1開發(fā)板試用】+ RGB LED及按鍵的控制

    GPIO的輸入設(shè)備中,最常用的便是按鍵。在ELF 1開發(fā)板上,自然也短不了它,其在開發(fā)板上的位置如圖6所示,共有3個,分別為K1、K2及
    發(fā)表于 11-21 11:11

    【LuckFox Pico Plus開發(fā)板免費試用】RKNN模型推理測試

    感謝電子發(fā)燒友和幸狐科技提供了此次LuckFox Pico Plus開發(fā)板試用機(jī)會。 LuckFox Pico 是一款基于瑞芯 RV1103 芯片具有高性價比的微型 Linux
    發(fā)表于 11-11 16:51

    方法|基于T507開發(fā)板講如何將占用引腳配置為普通GPIO

    方法|基于T507開發(fā)板講如何將占用引腳配置為普通GPIO
    的頭像 發(fā)表于 11-09 13:59 ?566次閱讀
    方法|基于T507<b class='flag-5'>開發(fā)板</b>講如何將占用引腳配置為普通<b class='flag-5'>GPIO</b>