找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 13690|回復(fù): 20
打印 上一主題 下一主題
收起左側(cè)

stm32寫應(yīng)變片的程序 讀HX711芯片的輸出

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
實(shí)驗(yàn)器材:
    MiniSTM32F103開發(fā)板V3版本
   
實(shí)驗(yàn)?zāi)康?
    學(xué)習(xí)彩色TFTLCD顯示屏的使用
   
硬件資源:
    1,DS0(連接在PA8)
    2,串口1(波特率:9600,PA9/PA10連接在板載USB轉(zhuǎn)串口芯片CH340上面)
    3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模塊(通過GPIO驅(qū)動(dòng),連接關(guān)系見lcd.h)
   
實(shí)驗(yàn)現(xiàn)象:
    本實(shí)驗(yàn)利用MiniSTM32開發(fā)板連接ALIENTEK TFTLCD模塊(除CPLD版本7寸屏模塊外,其余所有ALIENTEK的
    LCD模塊都可以支持),實(shí)現(xiàn)TFTLCD模塊的顯示,下載成功后,通過把LCD模塊插入TFTLCD模塊接口(靠右
    插),按下復(fù)位之后,就可以看到LCD模塊不停的顯示一些信息并不斷切換底色。同時(shí)該實(shí)驗(yàn)會(huì)顯示LCD驅(qū)
    動(dòng)器的ID,并且會(huì)在串口打�。ò磸�(fù)位一次,打印一次)。
   
注意事項(xiàng):  
    1,4.3寸和7寸屏需要比較大電流,USB供電可能不足,請(qǐng)用外部電源供電(5V電源,接VOUT2即可).
    2,本例程在LCD_Init函數(shù)里面(在ILI93xx.c),用到了printf,如果不初始化串口1,將導(dǎo)致液晶無法顯示!!
    3,LCD模塊在開發(fā)板的LCD接口上面,必須靠右插。

全部源碼下載:
應(yīng)變片.rar (331.19 KB, 下載次數(shù): 227)




主程序預(yù)覽:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"
  5. #include "lcd.h"
  6. #include "hx711.h"

  7. //ALIENTEK Mini STM32開發(fā)板范例代碼11
  8. //TFTLCD顯示實(shí)驗(yàn)   
  9. unsigned long Read_HX711(void)  //讀HX711芯片輸出的數(shù)據(jù)。
  10. {
  11. unsigned long val = 0;
  12. unsigned char i = 0;

  13. GPIO_SetBits(GPIOD,GPIO_Pin_13);           //DOUT=1
  14. GPIO_ResetBits(GPIOD,GPIO_Pin_12);           //SCK=0
  15. while(GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_13));   //等待DOUT=0  
  16. delay_us(1);
  17. for(i=0;i<24;i++)
  18. {
  19. GPIO_SetBits(GPIOD,GPIO_Pin_12);           //SCK=1
  20. val=val<<1;
  21. delay_us(1);  
  22. GPIO_ResetBits(GPIOD,GPIO_Pin_12);           //SCK=0
  23. if(GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_13))   //DOUT=1
  24. val++;
  25. delay_us(1);
  26. }
  27. GPIO_SetBits(GPIOD,GPIO_Pin_12);
  28. val = val^0x800000;
  29. delay_us(1);
  30. GPIO_ResetBits(GPIOD,GPIO_Pin_12);
  31. delay_us(1);  
  32. return val;        
  33. }


  34. int main(void)
  35. {
  36.          u8 x=0;
  37.         unsigned long mm;
  38.         u8 lcd_id[12];                        //存放LCD ID字符串       
  39.         delay_init();                     //延時(shí)函數(shù)初始化          
  40.         uart_init(9600);                 //串口初始化為9600
  41.         LED_Init();                                  //初始化與LED連接的硬件接口
  42.         LCD_Init();
  43.         POINT_COLOR=RED;
  44.         sprintf((char*)lcd_id,"LCD ID:%04X",lcddev.id);//將LCD ID打印到lcd_id數(shù)組。                                        
  45.           while(1)
  46.         {                 
  47.                 mm= Read_HX711();
  48.                 switch(x)
  49.                 {
  50.                         case 0:LCD_Clear(WHITE);break;
  51.                         case 1:LCD_Clear(BLACK);break;
  52.                         case 2:LCD_Clear(BLUE);break;
  53.                         case 3:LCD_Clear(RED);break;
  54.                         case 4:LCD_Clear(MAGENTA);break;
  55.                         case 5:LCD_Clear(GREEN);break;
  56.                         case 6:LCD_Clear(CYAN);break;

  57.                         case 7:LCD_Clear(YELLOW);break;
  58.                         case 8:LCD_Clear(BRRED);break;
  59.                         case 9:LCD_Clear(GRAY);break;
  60.                         case 10:LCD_Clear(LGRAY);break;
  61.                         case 11:LCD_Clear(BROWN);break;
  62.                 }
  63.                 POINT_COLOR=RED;          
  64.                 LCD_ShowString(30,40,200,24,24,"Mini STM32 ^_^");       
  65.                 LCD_ShowString(30,70,200,16,16,"TFTLCD TEST");
  66.                 LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK");
  67.                 LCD_ShowString(30,110,200,16,16,lcd_id);                //顯示LCD ID                                                       
  68.                 LCD_ShowString(30,130,200,12,12,"2014/3/7");         
  69.     LCD_ShowNum(30,160,mm,8,12);               
  70.             x++;
  71.                 if(x==12)x=0;
  72.                 LED0=!LED0;         
  73.                 delay_ms(1000);       
  74.         }
  75. }
復(fù)制代碼


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:62289 發(fā)表于 2017-3-21 06:40 | 只看該作者

 謝謝分享
回復(fù)

使用道具 舉報(bào)

板凳
ID:191209 發(fā)表于 2017-4-19 14:25 | 只看該作者
采集的書籍能不能發(fā)一下 謝謝
回復(fù)

使用道具 舉報(bào)

地板
ID:171265 發(fā)表于 2017-5-2 00:38 | 只看該作者
能不能看下程序啊  和  電路圖�。�
回復(fù)

使用道具 舉報(bào)

5#
ID:216505 發(fā)表于 2017-7-22 11:30 | 只看該作者
謝謝樓主分享,下載學(xué)習(xí)下
回復(fù)

使用道具 舉報(bào)

6#
ID:188843 發(fā)表于 2017-7-26 13:34 | 只看該作者
謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

7#
ID:286405 發(fā)表于 2018-2-28 20:19 | 只看該作者
謝謝樓主
回復(fù)

使用道具 舉報(bào)

8#
ID:287580 發(fā)表于 2018-3-4 23:06 | 只看該作者
一定要學(xué)習(xí)一下 謝謝了!
回復(fù)

使用道具 舉報(bào)

9#
ID:310508 發(fā)表于 2018-4-17 22:49 | 只看該作者
謝謝樓主
回復(fù)

使用道具 舉報(bào)

10#
ID:350783 發(fā)表于 2018-6-13 15:39 | 只看該作者
厲害厲害,樓主給力啊
回復(fù)

使用道具 舉報(bào)

11#
ID:361571 發(fā)表于 2018-6-29 10:04 | 只看該作者
厲害厲害,樓主給力啊
回復(fù)

使用道具 舉報(bào)

12#
ID:378645 發(fā)表于 2018-7-25 16:47 | 只看該作者
謝謝樓主分享。。。
回復(fù)

使用道具 舉報(bào)

13#
ID:421148 發(fā)表于 2018-11-5 16:11 | 只看該作者
這個(gè)有詳細(xì)的介紹嗎???
回復(fù)

使用道具 舉報(bào)

14#
ID:421148 發(fā)表于 2018-11-5 16:57 | 只看該作者
是新用戶不能評(píng)論嗎???文件都下載不了�。】拥�
回復(fù)

使用道具 舉報(bào)

15#
ID:457055 發(fā)表于 2018-12-28 15:52 | 只看該作者
這個(gè)PD12.13在哪里啊,找不到啊
回復(fù)

使用道具 舉報(bào)

16#
ID:470779 發(fā)表于 2019-1-20 10:14 | 只看該作者
謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

17#
ID:395676 發(fā)表于 2019-4-3 19:57 | 只看該作者
來了 謝謝您
回復(fù)

使用道具 舉報(bào)

18#
ID:326238 發(fā)表于 2019-4-26 12:34 | 只看該作者
請(qǐng)問這個(gè)輸出結(jié)果穩(wěn)定嗎?我用32做的結(jié)果很跳,而且在沒放東西時(shí)會(huì)超重
回復(fù)

使用道具 舉報(bào)

19#
ID:306188 發(fā)表于 2019-6-24 22:24 | 只看該作者
謝謝樓主
回復(fù)

使用道具 舉報(bào)

20#
ID:295548 發(fā)表于 2020-2-22 13:55 | 只看該作者
應(yīng)變片連接32的時(shí)候中間需要加其他芯片嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表