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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32+LCD彩色液晶屏顯示漢字、英文、數字的程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:415366 發表于 2020-6-1 15:46 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
共享一份資料,LCD彩色液晶屏顯示漢字、英文、數字的程序,適合初學者,單片機用STM32

單片機源程序如下:
  1. #include "pbdata.h"

  2. void RCC_Configuration(void);
  3. void GPIO_Configuration(void);
  4. void NVIC_Configuration(void);
  5. void USART_Configuration(void);

  6. int fputc(int ch,FILE *f)
  7. {
  8.         USART_SendData(USART1,(u8)ch);
  9.         while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);
  10.         return ch;
  11. }

  12. int main(void)
  13. {
  14.    u8 i=0;
  15.    RCC_Configuration();        //系統時鐘初始化
  16.    GPIO_Configuration();//端口初始化
  17.    USART_Configuration();
  18.    NVIC_Configuration();
  19.    FSMC_Configuration();

  20.    SSD1963_Init();
  21.    delay_ms(1000);
  22.    SSD1963_CLEAR(WHITE);

  23.    for(i=0;i<4;i++)
  24.         {
  25.                 Show_Font(30+i*50,50,i,RED,WHITE);
  26.         }
  27.         
  28.         for(i=0;i<15;i++)
  29.         {
  30.            Show_Str(10+i*15,100,i,RED,WHITE);
  31.         }

  32.     while(1)
  33.         {
  34.                 TFT_Draw_Rectangle(10,150,230,160,RED);
  35.                 delay_ms(200);
  36.                 TFT_Draw_Rectangle(10,150,230,160,BLUE);
  37.                 delay_ms(200);
  38.                 TFT_Draw_Rectangle(10,150,230,160,GREEN);
  39.                 delay_ms(200);
  40.         }
  41. }

  42. void RCC_Configuration(void)
  43. {
  44.     SystemInit();//72m
  45.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  46.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE);
  47.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);
  48.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
  49.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);  
  50.         RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE);//使能FSMC接口時鐘
  51. }

  52. void GPIO_Configuration(void)
  53. {
  54.     GPIO_InitTypeDef GPIO_InitStructure;        
  55.         
  56.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;//TX
  57.         GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
  58.         GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;
  59.         GPIO_Init(GPIOA,&GPIO_InitStructure);

  60.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;//RX
  61.         GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;
  62.         GPIO_Init(GPIOA,&GPIO_InitStructure);

  63.           //FSMC 管腳初始化///////////
  64.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;                //背光控制               
  65.         GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
  66.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽輸出
  67.         GPIO_Init(GPIOD, &GPIO_InitStructure);   
  68.         GPIO_SetBits(GPIOD, GPIO_Pin_13);                                //打開背光
  69.                
  70.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;           //TFT 復位腳
  71.         GPIO_Init(GPIOE, &GPIO_InitStructure);   
  72.   
  73.           //啟用FSMC復用功能 設置為復用上拉                        
  74.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14  //D0
  75.                                                                 | GPIO_Pin_15  //D1
  76.                                                                 | GPIO_Pin_0   //D2
  77.                                                                 | GPIO_Pin_1   //D3
  78.                                                                 | GPIO_Pin_8   //D13
  79.                                                                 | GPIO_Pin_9   //D14
  80.                                                                 | GPIO_Pin_10 ;//D15                                                                                                                                
  81.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;//復用模式
  82.         GPIO_Init(GPIOD, &GPIO_InitStructure);
  83.         
  84.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7  //D4
  85.                                                                 | GPIO_Pin_8  //D5
  86.                                                                 | GPIO_Pin_9  //D6
  87.                                                                 | GPIO_Pin_10 //D7
  88.                                                                 | GPIO_Pin_11 //D8
  89.                                                                 | GPIO_Pin_12 //D9
  90.                                                                 | GPIO_Pin_13 //D10
  91.                                                                 | GPIO_Pin_14 //D11
  92.                                                                 | GPIO_Pin_15;//D12
  93.         GPIO_Init(GPIOE, &GPIO_InitStructure);         


  94.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 //RS
  95.                                                                 | GPIO_Pin_4  //nOE
  96.                                                                 | GPIO_Pin_5; //nWE
  97.         GPIO_Init(GPIOD, &GPIO_InitStructure);

  98.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7; //NE1
  99.         GPIO_Init(GPIOD, &GPIO_InitStructure);
  100. }

  101. void NVIC_Configuration(void)
  102. {
  103.            NVIC_InitTypeDef NVIC_InitStructure;

  104.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);

  105.         NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;
  106.         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  107.         NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  108.         NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  109.         NVIC_Init(&NVIC_InitStructure);
  110. }

  111. void USART_Configuration(void)
  112. {
  113.     USART_InitTypeDef  USART_InitStructure;

  114.         USART_InitStructure.USART_BaudRate=9600;
  115.         USART_InitStructure.USART_WordLength=USART_WordLength_8b;
  116.         USART_InitStructure.USART_StopBits=USART_StopBits_1;
  117.         USART_InitStructure.USART_Parity=USART_Parity_No;
  118.         USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
  119.         USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;

  120.         USART_Init(USART1,&USART_InitStructure);
  121.         USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
  122.         USART_Cmd(USART1,ENABLE);
  123.         USART_ClearFlag(USART1,USART_FLAG_TC);
  124. }
復制代碼

所有資料51hei提供下載:
Keil程序.7z (1.03 MB, 下載次數: 40)



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

使用道具 舉報

沙發
ID:860649 發表于 2020-12-15 15:56 | 只看該作者
中間加個液晶控制IC,如RA8889就很好處理了,文字圖片甚至視頻都很好實現
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人av免费在线观看 | 亚洲乱码一区二区三区在线观看 | 久久伊人久久 | 伊人伊成久久人综合网站 | 国产在线观看一区二区三区 | 一区视频| 91av视频 | 综合国产 | 中文精品视频 | 国产精品久久一区 | 午夜影院在线观看 | 国产精品中文字幕一区二区三区 | 欧美一级片黄色 | 国产精品自产av一区二区三区 | 色综合天天天天做夜夜夜夜做 | 国产精品久久久久久久久久久久午夜片 | 精品福利一区二区三区 | 久久久新视频 | 在线看91| 国产精品夜色一区二区三区 | 91九色视频 | 国产视频1 | 精品福利在线视频 | 日本精品久久久久久久 | 91社区在线观看高清 | 久久久福利| 久草免费在线视频 | 欧美一区二区免费 | aⅴ色国产 欧美 | 成人性生交a做片 | 天天曰天天曰 | 国产日韩欧美精品一区二区 | 国产精品久久久久久久久久久久久久 | 国产精品 欧美精品 | 婷婷狠狠 | 欧美一区免费 | 日韩一区精品 | 国产精品资源在线 | 久久精品色欧美aⅴ一区二区 | 国产95在线| 亚洲国产欧美91 |