久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2642|回復: 0
收起左側

ESK32-360開發板的串行通訊及應用

[復制鏈接]
ID:776997 發表于 2020-8-31 23:00 | 顯示全部樓層 |閱讀模式
1. 串口通信電路
ESK32-360開發板上提供了串行通訊功能,其接口如圖1所示。

1.jpg
1  RS232接口

2.jpg


2  DB9的引腳連接

2.基本應用
有了串行通訊后,我們用它可以做什么呢?
我們還是將它與LCD屏顯示結合起來,最簡單的就是發送數據在LCD屏上進行繪制,如動態地指定一個寬度,然后進行指定色彩的填充,見圖3和圖4所示。
3.jpg

3.通訊傳輸顯示圖片
有了前面簡單的測試,我們就可以大膽地期待著通過傳輸數據來顯示圖片了,因為前面用數組來顯示大的圖片時會導致下載崩潰。
首先以小圖片來測試,成功通過!其效果如圖5所示。

4.jpg
5 以傳送數據來顯示圖片


傳送數據的界面如圖6所示,其中“00 38”是圖片寬度,即56個像素,而“00 44”是圖片的高度,即68個像素。別小看這個圖片,它可是占用了7616個字節呀!
5.jpg

6 傳送圖片數據


那么把膽子再放大些呢?能傳送153600個字節嗎?它可是滿屏圖片的規格,153600=240*320*2

( 320=0140H 240=F0H 153600=240*320*2  )

首先用Image2Lcd軟件將一幅240*320像素點的圖片轉換為二進制數據文件BIN,其格式設置如圖7所示,然后進行串口傳送,則效果如圖8所示,一樣的成功!

當然在執行時有些嚇人,首先是讀入文件時串口調試器有點懵,像是被打暈,好一會沒找到北;好容易在發送窗口有了數據,這次該輪到發送器暈了,也是一段時間沒響應,近乎是要崩潰!還在還算頑強,終于挺過來了,屏幕上一絲絲彩線在游走,終于是一個圓滿!
3.jpg

7 準備數據文件

4.jpg

8 圖片顯示


為防止偶然,又傳第2幅、第3 ... ... 完全抗擊打!
8.jpg

9 演示效果


最后請出我們的主角,功能程序:
  1. int main(void)
  2. {
  3.   u32 err = 0, result;
  4.   u16 uData,a,b;
  5.   u32 xid = 0;
  6.   u32 ImgAdds = 0;
  7.   u32 yid = 0;
  8.   u32 i = 0, j = 0, color = 0;
  9.   u8  X_Location=0, Height;
  10.   u16 Y_Location=0, Width;
  11.   /* Initialize LEDs      */
  12.   HT32F_DVB_LEDInit(HT_LED1);
  13.   HT32F_DVB_LEDInit(HT_LED2);
  14.   HT32F_DVB_LEDInit(HT_LED3);
  15.   LCD_Init();
  16.   LCD_Config();
  17.   LCD_BackColorSet(Black);
  18.   LCD_TextColorSet(Yellow);
  19.   LCD_StringLineDisplay(Line3, "       Holtek       ");
  20.   LCD_StringLineDisplay(Line4, "     HT32 Series    ");
  21.   LCD_StringLineDisplay(Line5, "     LCD Example    ");
  22.         
  23.   UxART_Configuration();
  24.   UxART_TxTest();
  25.         
  26.   for (i = 0; i < 4; i++)
  27.   {
  28.          while (USART_GetFlagStatus(HTCFG_UART_PORT, USART_FLAG_RXDR) == RESET);
  29.          uData = USART_ReceiveData(HTCFG_UART_PORT);
  30.          Tx_Buffer[i]=(u8)uData;
  31.          UxART_TxSend(uData);
  32.   }
  33.         
  34.          a=Tx_Buffer[0];
  35.          b=Tx_Buffer[1];
  36.          Width=a << 8 | b;
  37.          a=Tx_Buffer[2];
  38.          b=Tx_Buffer[3];
  39.          Height=a << 8 | b;
  40.         
  41.          xid = X_Location;
  42.          yid = Y_Location;
  43.         
  44.          LCD_StarterSet(xid, yid);
  45.          for (i = 0; i < Height; i++)
  46.         {
  47.            LCD_WriteRAMPrior();
  48.            for (j = 0; j < Width; j++)
  49.           {
  50.              while(USART_GetFlagStatus(HTCFG_UART_PORT, USART_FLAG_RXDR) == RESET);
  51.              a = USART_ReceiveData(HTCFG_UART_PORT);
  52.                            
  53.            while(USART_GetFlagStatus(HTCFG_UART_PORT, USART_FLAG_RXDR) == RESET);
  54.            b = USART_ReceiveData(HTCFG_UART_PORT);
  55.            color = a << 8 | b;
  56.                            
  57.           LCD_WriteRAM(color);
  58.        }
  59.        xid++;
  60.        LCD_StarterSet(xid, yid);
  61.   }
  62.   while (1);
  63. }
復制代碼

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 不卡一区 | 欧美一区成人 | 神马福利 | 久久亚洲视频 | 日韩在线视频一区二区三区 | 日本xx视频免费观看 | a在线视频 | 国产视频精品视频 | 日韩中文字幕免费在线观看 | 午夜视频在线播放 | www日本在线播放 | 欧美性生活一区二区三区 | 久久久精品视 | 日韩第一夜 | 日韩高清电影 | 91av小视频 | 性色av一区二区三区 | 国产91精品久久久久久久网曝门 | 国产精品视频999 | 日韩一区二区三区在线 | 日韩美女爱爱 | 一级片免费视频 | 国精品一区| 国产精品99久久免费观看 | 最新超碰| 久久人人爽人人爽人人片av免费 | 午夜精品一区二区三区三上悠亚 | 亚洲免费大片 | 毛片一级网站 | 黄 色 毛片免费 | 91成人免费| 武道仙尊动漫在线观看 | 亚洲一区中文字幕 | 国产精品一区视频 | 日本不卡一区 | 91av精品 | 91精品久久久久久久久 | 日韩欧美三级 | 亚洲精品日韩欧美 | 婷婷久久综合 | 亚洲精品国产成人 |