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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9928|回復: 21
收起左側

STM32f103zet6+AMG8833的熱成像例程

  [復制鏈接]
ID:285534 發表于 2020-3-28 17:26 | 顯示全部樓層 |閱讀模式
714d9cd1ca3715ac19ea0c04b348c67.jpg
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"
  7. #include "asm88xx.h"


  8. low range of the sensor (this will be blue on the screen)
  9. #define MINTEMP 15

  10. high range of the sensor (this will be red on the screen)
  11. #define MAXTEMP 29

  12. #define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt)))

  13. const uint16_t camColors[] = {0x480F,
  14. 0x400F,0x400F,0x400F,0x4010,0x3810,0x3810,0x3810,0x3810,0x3010,0x3010,
  15. 0x3010,0x2810,0x2810,0x2810,0x2810,0x2010,0x2010,0x2010,0x1810,0x1810,
  16. 0x1811,0x1811,0x1011,0x1011,0x1011,0x0811,0x0811,0x0811,0x0011,0x0011,
  17. 0x0011,0x0011,0x0011,0x0031,0x0031,0x0051,0x0072,0x0072,0x0092,0x00B2,
  18. 0x00B2,0x00D2,0x00F2,0x00F2,0x0112,0x0132,0x0152,0x0152,0x0172,0x0192,
  19. 0x0192,0x01B2,0x01D2,0x01F3,0x01F3,0x0213,0x0233,0x0253,0x0253,0x0273,
  20. 0x0293,0x02B3,0x02D3,0x02D3,0x02F3,0x0313,0x0333,0x0333,0x0353,0x0373,
  21. 0x0394,0x03B4,0x03D4,0x03D4,0x03F4,0x0414,0x0434,0x0454,0x0474,0x0474,
  22. 0x0494,0x04B4,0x04D4,0x04F4,0x0514,0x0534,0x0534,0x0554,0x0554,0x0574,
  23. 0x0574,0x0573,0x0573,0x0573,0x0572,0x0572,0x0572,0x0571,0x0591,0x0591,
  24. 0x0590,0x0590,0x058F,0x058F,0x058F,0x058E,0x05AE,0x05AE,0x05AD,0x05AD,
  25. 0x05AD,0x05AC,0x05AC,0x05AB,0x05CB,0x05CB,0x05CA,0x05CA,0x05CA,0x05C9,
  26. 0x05C9,0x05C8,0x05E8,0x05E8,0x05E7,0x05E7,0x05E6,0x05E6,0x05E6,0x05E5,
  27. 0x05E5,0x0604,0x0604,0x0604,0x0603,0x0603,0x0602,0x0602,0x0601,0x0621,
  28. 0x0621,0x0620,0x0620,0x0620,0x0620,0x0E20,0x0E20,0x0E40,0x1640,0x1640,
  29. 0x1E40,0x1E40,0x2640,0x2640,0x2E40,0x2E60,0x3660,0x3660,0x3E60,0x3E60,
  30. 0x3E60,0x4660,0x4660,0x4E60,0x4E80,0x5680,0x5680,0x5E80,0x5E80,0x6680,
  31. 0x6680,0x6E80,0x6EA0,0x76A0,0x76A0,0x7EA0,0x7EA0,0x86A0,0x86A0,0x8EA0,
  32. 0x8EC0,0x96C0,0x96C0,0x9EC0,0x9EC0,0xA6C0,0xAEC0,0xAEC0,0xB6E0,0xB6E0,
  33. 0xBEE0,0xBEE0,0xC6E0,0xC6E0,0xCEE0,0xCEE0,0xD6E0,0xD700,0xDF00,0xDEE0,
  34. 0xDEC0,0xDEA0,0xDE80,0xDE80,0xE660,0xE640,0xE620,0xE600,0xE5E0,0xE5C0,
  35. 0xE5A0,0xE580,0xE560,0xE540,0xE520,0xE500,0xE4E0,0xE4C0,0xE4A0,0xE480,
  36. 0xE460,0xEC40,0xEC20,0xEC00,0xEBE0,0xEBC0,0xEBA0,0xEB80,0xEB60,0xEB40,
  37. 0xEB20,0xEB00,0xEAE0,0xEAC0,0xEAA0,0xEA80,0xEA60,0xEA40,0xF220,0xF200,
  38. 0xF1E0,0xF1C0,0xF1A0,0xF180,0xF160,0xF140,0xF100,0xF0E0,0xF0C0,0xF0A0,
  39. 0xF080,0xF060,0xF040,0xF020,0xF800,};

  40. float temp;
  41. float pixels[AMG88xx_PIXEL_ARRAY_SIZE];
  42. uint16_t arrColor[64];

  43. float map(float val, float I_Min, float I_Max, float O_Min, float O_Max)
  44. {
  45.     return(val/(I_Max-I_Min)*(O_Max-O_Min) + O_Min);
  46. }
  47. void show(uint16_t *pBuf)
  48. {        u8 i=0;
  49.          u8 j=0;
  50.         u16 colorr1=0;
  51.                         for(j=0;j<8;j++)
  52.                 {
  53.                         for(i=0;i<8;i++)
  54.                         {                                
  55.                         LCD_Fill(i*40,j*40,(i*40)+40,(j*40)+40,arrColor[colorr1]);
  56.                                 colorr1++;
  57.                         }
  58.           }
  59.         

  60. }void pull_color(float *pPixel)
  61. {
  62.         uint8_t i;
  63.         
  64.         for(i = 0; i < 64; i ++)
  65.         {
  66.                 if(pPixel[i] < 10)
  67.                 {
  68.                         arrColor[i] = BLUE;
  69.                 }
  70.                 else if(pPixel[i] < 20)
  71.                 {
  72.                         arrColor[i] = BLUE;
  73.                 }
  74.                 else if(pPixel[i] < 25)
  75.                 {
  76.                         arrColor[i] = GREEN;
  77.                 }
  78.                 else if(pPixel[i] < 30)
  79.                 {
  80.                         arrColor[i] = RED;
  81.                 }
  82.                 else if(pPixel[i] < 35)
  83.                 {
  84.                         arrColor[i] = BRRED;
  85.                 }               
  86.         }
  87. }


  88. int main(void)
  89. {         
  90.         delay_init();                     //延時函數初始化         
  91.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         //設置NVIC中斷分組2:2位搶占優先級,2位響應優先級
  92.         uart_init(115200);                 //串口初始化為115200
  93.          LED_Init();                             //LED端口初始化
  94.         LCD_Init();  
  95.   amg88xx_init();
  96.          
  97.           while(1)
  98.         {               
  99.    amg88xx_readPixels(pixels, 64);
  100.    pull_color(pixels);
  101.                 show(arrColor);
  102.                 LED0=!LED0;               
  103.         }
  104. }
復制代碼

全部資料51hei下載地址:
AMG8833識別成功.7z (225.07 KB, 下載次數: 319)

評分

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

查看全部評分

回復

使用道具 舉報

ID:384489 發表于 2020-5-18 16:35 | 顯示全部樓層
感覺很不錯,學習了。
回復

使用道具 舉報

ID:762925 發表于 2020-5-27 21:49 | 顯示全部樓層
我來學習了
回復

使用道具 舉報

ID:770122 發表于 2020-6-5 10:48 | 顯示全部樓層
謝謝樓主分享,正需要這個東西
回復

使用道具 舉報

ID:819036 發表于 2020-9-14 20:43 | 顯示全部樓層
求助,AMG引腳INT和ADO要怎么連o(╥﹏╥)o
回復

使用道具 舉報

ID:819036 發表于 2020-9-15 14:02 | 顯示全部樓層
本帖最后由 719439150 于 2020-9-15 16:16 編輯

pixels數組中存儲的是溫度嗎,為什么我調用pixels        
while(1)
        {
               
                amg88xx_readPixels(pixels, 64);
                for(t=0;t<=63;t++)
                {
                        printf("%d %f\r\n",t,pixels[t]);
                        delay_ms(100);
                }
}  
串口輸出后除了pixels[0]以外其他全是63.75,求大佬解惑
回復

使用道具 舉報

ID:778512 發表于 2020-9-26 15:52 | 顯示全部樓層
719439150 發表于 2020-9-15 14:02
pixels數組中存儲的是溫度嗎,為什么我調用pixels        
while(1)
        {

請問大佬這個問題解決了嗎。我也遇到了,望賜教
回復

使用道具 舉報

ID:400726 發表于 2020-10-6 19:02 | 顯示全部樓層
719439150 發表于 2020-9-15 14:02
pixels數組中存儲的是溫度嗎,為什么我調用pixels        
while(1)
        {

我也遇到這個問題了,大佬怎么解決
回復

使用道具 舉報

ID:698988 發表于 2020-10-9 20:16 | 顯示全部樓層
719439150 發表于 2020-9-15 14:02
pixels數組中存儲的是溫度嗎,為什么我調用pixels        
while(1)
        {

多回復ACK了
回復

使用道具 舉報

ID:698988 發表于 2020-10-9 20:23 | 顯示全部樓層
首先感謝樓主的分享。
一次性讀取64個溫度時,應答了兩次,所以第一個數正確,其它返回值都是FF。應刪去讀字節中的應答即可。
回復

使用道具 舉報

ID:657190 發表于 2020-10-11 21:55 來自觸屏版 | 顯示全部樓層
719439150 發表于 2020-9-15 14:02
pixels數組中存儲的是溫度嗎,為什么我調用pixels        
while(1)
        {

兄弟我也是這樣,你解決了嗎,
回復

使用道具 舉報

ID:210511 發表于 2020-11-22 23:48 來自觸屏版 | 顯示全部樓層
可以運行成功嗎
回復

使用道具 舉報

ID:337139 發表于 2020-11-25 13:56 | 顯示全部樓層
青天有月 發表于 2020-10-11 21:55
兄弟我也是這樣,你解決了嗎,

同問,這個我也碰到了。
回復

使用道具 舉報

ID:634558 發表于 2021-4-7 16:49 | 顯示全部樓層
根據上面兩樓大佬的回復,把asm88xx.c里第73行的應答注釋掉,應該就能正常工作了
回復

使用道具 舉報

ID:232129 發表于 2021-4-9 10:44 | 顯示全部樓層
正在學習,收到的值為00 正在找原因
回復

使用道具 舉報

ID:854025 發表于 2022-6-29 16:41 | 顯示全部樓層
能正常顯示溫度,但是圖像顯示出現了問題,這是什么原因呢,是通過修改pPixe后面的數字大小來修正圖像顯示嗎?
回復

使用道具 舉報

ID:981841 發表于 2023-6-9 10:39 | 顯示全部樓層
2900015021 發表于 2022-6-29 16:41
能正常顯示溫度,但是圖像顯示出現了問題,這是什么原因呢,是通過修改pPixe后面的數字大小來修正圖像顯示 ...

修改顯示函數
回復

使用道具 舉報

ID:1086988 發表于 2023-7-5 16:17 | 顯示全部樓層
樓主,我剛好在做這個設計,里面的lcd里面說驅動可以用ili9341?
回復

使用道具 舉報

ID:1086988 發表于 2023-7-11 09:16 | 顯示全部樓層
樓主,我買的那個amg8833無法寫I2C,不知道是什么原因。我用的野火的開發板,運行你給的程序,到amg88xx那里就運行不下去了。不知道樓主有好什么好的建議嗎?
回復

使用道具 舉報

ID:1106702 發表于 2024-3-7 18:55 | 顯示全部樓層
為什么我顯示的只有幾個色塊,而且還是不動的
回復

使用道具 舉報

ID:1113339 發表于 2024-3-21 10:23 | 顯示全部樓層
發表于 2024-3-7 18:55
為什么我顯示的只有幾個色塊,而且還是不動的

我也是這樣,你解決了嗎?
回復

使用道具 舉報

ID:600499 發表于 2025-2-19 11:20 | 顯示全部樓層
原來是刪除 IIC_Read_Byte() 中的
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久久网站 | 午夜精品久久久久久久久久久久久 | 伊人爽| jlzzjlzz国产精品久久 | 中文字幕在线一区二区三区 | 91精品国产综合久久小仙女图片 | 亚洲精品国产成人 | 成人激情免费视频 | 国产精品污污视频 | 国产日韩av一区二区 | 青春草91| 黑人性hd| 黄色一级大片在线免费看产 | 毛片日韩| 可以免费看的毛片 | 日韩综合在线 | 日韩成人精品在线观看 | 91亚洲精 | 亚洲精品二区 | 久久久久久久国产精品视频 | 久久精品欧美一区二区三区不卡 | 中文字幕av亚洲精品一部二部 | 日日夜夜天天 | 一级高清免费毛片 | 中文字幕在线三区 | 亚洲最大av网站 | 久草精品在线 | 日韩中文字幕在线观看 | 91精品国产综合久久久久蜜臀 | 大香在线伊779 | 久久一区二区三区免费 | 欧美在线| 亚洲一区二区三区四区av | 日韩欧美三区 | 欧美老妇交乱视频 | 777毛片| 99精品国产一区二区三区 | 网站国产 | 亚洲精品一二三 | 日本不卡视频 | 范冰冰一级做a爰片久久毛片 |