[PIC®/AVR®/dsPIC®产品] 【CuriosityNano测评报告】 串口基本测试

[复制链接]
1484|2
 楼主| masterqqq 发表于 2020-8-12 09:10 | 显示全部楼层 |阅读模式
本帖最后由 masterqqq 于 2020-8-12 10:15 编辑

调试环境:MPLAB x IDE5.40  + XC8

项目属性的PKOB 通讯速率需要设置位0.75M才能正常下载
USART输出测试

  1. #define F_CPU                           (4000000UL)         /* using default clock 4MHz*/
  2. #define USART1_BAUD_RATE(BAUD_RATE)     ((float)(64 * 4000000 / (16 * (float)BAUD_RATE)) +0.5)

  3. #include <avr/io.h>
  4. #include <util/delay.h>
  5. #include <string.h>

  6. void USART1_init(void);
  7. void USART1_sendChar(char c);
  8. void USART1_sendString(char str[]);

  9. void USART1_init(void)
  10. {
  11.     PORTC.DIRSET = PIN0_bm;                             /* set pin 0 of PORT C (TXd) as output*/
  12.     PORTC.DIRCLR = PIN1_bm;                             /* set pin 1 of PORT C (RXd) as input*/
  13.    
  14.     USART1.BAUD = (uint16_t)USART1_BAUD_RATE(9600);   /* set the baud rate*/
  15.    
  16.     USART1.CTRLC = USART_CHSIZE0_bm
  17.                  | USART_CHSIZE1_bm;                    /* set the data format to 8-bit*/
  18.                  
  19.     USART1.CTRLB |= USART_TXEN_bm;                      /* enable transmitter*/
  20.    
  21. }

  22. void USART1_sendChar(char c)
  23. {
  24.     while(!(USART1.STATUS & USART_DREIF_bm))
  25.     {
  26.         ;
  27.     }
  28.    
  29.     USART1.TXDATAL = c;
  30. }

  31. void USART1_sendString(char str[])
  32. {
  33.     for(int i = 0; i < strlen(str); i++)   
  34.     {        
  35.         USART1_sendChar(str[i]);   
  36.     }
  37. }

  38. int main(void)
  39. {
  40.    char str[40] ="Curiosity Nano USART ";
  41.     USART1_init();
  42.    
  43.     while (1)
  44.     {
  45.         USART1_sendString(str);
  46.         _delay_ms(1000);
  47.     }
  48. }





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
xuanhuanzi 发表于 2020-8-12 19:59 | 显示全部楼层
操作 666
xuanhuanzi 发表于 2020-8-12 19:59 | 显示全部楼层
不知道串口的连续性如何。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:32MCU单片机查询网 http://www.32mcu.com MCU选型,嵌入式设计辅助,选择最适合的MCU

35

主题

173

帖子

146

粉丝
快速回复 在线客服 返回列表 返回顶部