欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2596|回復: 0
打印 上一主題 下一主題
收起左側

STM32F103系列 USB虛擬串口 程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:917688 發表于 2021-5-8 18:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
USB虛擬串口
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"                           
  5. #include "lcd.h"
  6. #include "usb_lib.h"
  7. #include "hw_config.h"
  8. #include "usb_pwr.h"         




  9. int main(void)
  10. {         
  11.         u16 t;
  12.         u16 len;       
  13.         u16 times=0;   
  14.         u8 usbstatus=0;       
  15.         delay_init();                     //延時函數初始化          
  16.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         //設置NVIC中斷分組2:2位搶占優先級,2位響應優先級
  17.         uart_init(115200);                 //串口初始化為115200
  18.         LED_Init();                                  //初始化與LED連接的硬件接口
  19.         LCD_Init();                                //初始化LCD
  20.         POINT_COLOR=RED;                //設置字體為紅色
  21.         LCD_ShowString(30,50,200,16,16,"WarShip STM32");       
  22.         LCD_ShowString(30,70,200,16,16,"USB Virtual USART TEST");       
  23.         LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK");
  24.         LCD_ShowString(30,110,200,16,16,"2015/1/28");  
  25.         LCD_ShowString(30,130,200,16,16,"USB Connecting...");//提示USB開始連接
  26.         delay_ms(1800);
  27.         USB_Port_Set(0);         //USB先斷開
  28.         delay_ms(700);
  29.         USB_Port_Set(1);        //USB再次連接
  30.         Set_USBClock();   
  31.         USB_Interrupts_Config();   
  32.         USB_Init();            
  33.         while(1)
  34.         {
  35.                 if(usbstatus!=bDeviceState)//USB連接狀態發生了改變.
  36.                 {
  37.                         usbstatus=bDeviceState;//記錄新的狀態
  38.                         if(usbstatus==CONFIGURED)
  39.                         {
  40.                                 POINT_COLOR=BLUE;
  41.                                 LCD_ShowString(30,130,200,16,16,"USB Connected    ");//提示USB連接成功
  42.                                 LED1=0;//DS1亮
  43.                         }else
  44.                         {
  45.                                 POINT_COLOR=RED;
  46.                                 LCD_ShowString(30,130,200,16,16,"USB disConnected ");//提示USB斷開
  47.                                 LED1=1;//DS1滅
  48.                         }
  49.                 }
  50.                 if(USB_USART_RX_STA&0x8000)
  51.                 {                                          
  52.                         len=USB_USART_RX_STA&0x3FFF;//得到此次接收到的數據長度
  53.                         usb_printf("\r\n您發送的消息為:%d\r\n\r\n",len);
  54.                         for(t=0;t<len;t++)
  55.                         {
  56.                                 USB_USART_SendData(USB_USART_RX_BUF[t]);//以字節方式,發送給USB
  57.                         }
  58.                         usb_printf("\r\n\r\n");//插入換行
  59.                         USB_USART_RX_STA=0;
  60.                 }else
  61.                 {
  62.                         times++;
  63.                         if(times%5000==0)
  64.                         {
  65.                                 usb_printf("\r\n戰艦STM32開發板USB虛擬串口實驗\r\n");
  66.                                 usb_printf("正點原子@ALIENTEK\r\n\r\n");
  67.                         }
  68.                         if(times%200==0)usb_printf("請輸入數據,以回車鍵結束\r\n");  
  69.                         if(times%30==0)LED0=!LED0;//閃爍LED,提示系統正在運行.
  70.                         delay_ms(10);   
  71.                 }
  72.         }
  73. }

復制代碼


USB虛擬串口實驗.zip

422.76 KB, 下載次數: 55, 下載積分: 黑幣 -5

USB虛擬串口

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表