91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于PIC單片機(jī)溫度-脈搏-DS18B20溫度-液晶12864顯示

bbxyliyang ? 來源:bbxyliyang ? 作者:bbxyliyang ? 2023-08-25 16:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


一、系統(tǒng)方案
1、上電初始化液晶第一行顯示脈搏,第二行顯示溫度,第三行顯示模式,第四行顯示強(qiáng)度;按下K1按鍵可以選擇模式,催眼模式或治療模式。
2、治療模塊下,可以通過K2、K3修改強(qiáng)度。

wKgaomToaAOAJ_FjAAAUph4x0OE297.png


二、硬件設(shè)計
原理圖如下:

wKgZomToaAqAO4-qAAINhA7wPXo324.png


三、單片機(jī)軟件設(shè)計
1、首先是系統(tǒng)初始化
//lcdrw = 0; //關(guān)閉
TRISE = 0x00; //輸出口
PORTE = 0x00;
TRISD = 0x00; // 輸出口

TRISB = 0x0f; // 輸入
TRISC = 0x00; // 輸出
TRISA=0x04;
PORTA=0;

Lcd_Initial(); //LCD初始化
Reset_DS18B20();

T1CKPS0=1; //定時器分頻器8分頻
T1CKPS1=1; //定時器分頻器8分頻
TMR1CS=0; //TMR1工作于定時器方式
TMR1L=(65536-100)%256; //定時12500個時鐘初始值
TMR1H=(65536-100)/256; //定時12500個時鐘初始值
GIE=1; //總中斷允許
PEIE=1; //外圍功能模塊中斷允許
TMR1IE=1; //TMR1中斷允許
TMR1ON=1; //啟動TMR1
pwm(20);
2、液晶顯示程序
/********************************************************************************************
* 函數(shù)名稱:Lcd_Write_Command()
* 功 能:寫指令代碼
* 入口參數(shù):無
* 出口參數(shù):無
*********************************************************************************************/
void Lcd_Write_Command(uchar temp)
{
port=temp;
rs=0;
rw=0;
e=1;
e=0;
}
/********************************************************************************************
* 函數(shù)名稱:Lcd_Write_Byte()
* 功 能:寫數(shù)據(jù)
* 入口參數(shù):無
* 出口參數(shù):無
*********************************************************************************************/
void Lcd_Write_Byte(uchar temp)
{
port=temp;
rs=1;
rw=0;
e=1;
e=0;
}
3、按鍵程序
void key()
{
if (RB0 == 0)//
{
delay(10); //延時
if (RB0 == 0)//
{
while (RB0== 0);
mode=!mode;
if(mode==0){ dangwei=2;pwm(20);}
}
}
if (RB1 == 0)//
{
delay(10); //延時
if (RB1== 0)//
{
while (RB1== 0);
if(mode==1)
{
dangwei++;
if(dangwei>6)dangwei=1;
pwm(dangwei*10);

}
}
}

if (RB2 == 0)//
{
delay(10); //延時
if (RB2 == 0)//
{
while (RB2== 0);
if(mode==1)
{

if(dangwei>1)dangwei--;
pwm(dangwei*10);

}
}
}

}

4、核心算法程序
while (1)
{



Lcd_Character_16X16(0,0,8,data_shuju[2]); //顯示溫
Lcd_Character_16X16(0,0,24,data_shuju[3]); //顯示度
Lcd_Character_16X8( 0,0,40, data_shuju1[10]);//顯示:
Lcd_Character_16X8( 0,0,48, data_shuju1[ad/100]);//顯示:
Lcd_Character_16X8( 0,0,56, data_shuju1[ad%100/10]);//顯示:
Lcd_Character_16X8( 0,0,64, data_shuju1[ad%10]);//顯示:




Lcd_Character_16X16(0,2,8,data_shuju[0]); //顯示溫
Lcd_Character_16X16(0,2,24,data_shuju[1]); //顯示度
Lcd_Character_16X8( 0,2,40, data_shuju1[10]);//顯示:
Lcd_Character_16X8( 0,2,48, data_shuju1[temp/10]);//顯示:
Lcd_Character_16X8( 0,2,56, data_shuju1[temp%10]);//顯示:

Lcd_Character_16X16(0,4,8,data_shuju[4]); //顯示溫
Lcd_Character_16X16(0,4,24,data_shuju[5]); //顯示度
Lcd_Character_16X8( 0,4,40, data_shuju1[10]);//顯示:
if(mode==0)
{
Lcd_Character_16X16(0,4,48,data_shuju[6]); //顯示溫
Lcd_Character_16X16(0,4,64,data_shuju[7]); //顯示度

}
else
{
Lcd_Character_16X16(0,4,48,data_shuju[8]); //顯示溫
Lcd_Character_16X16(0,4,64,data_shuju[9]); //顯示度


}

Lcd_Character_16X16(0,6,8,data_shuju[10]); //顯示溫
Lcd_Character_16X16(0,6,24,data_shuju[11]); //顯示度
Lcd_Character_16X8( 0,6,40, data_shuju1[10]);//顯示
Lcd_Character_16X8( 0,6,48, data_shuju1[dangwei]);//顯示:

ad=get_ad();
key();

temp=DS18B20_Get();
if((ad>alarm)||(temp>th)) TMR1ON=1;
else { TMR1ON=0;RC7=1;}


}
四、proteus仿真設(shè)計
Proteus軟件是一款應(yīng)用比較廣泛的工具,它可以在沒有硬件平臺的基礎(chǔ)上通過自身的軟件仿真出硬件平臺的運(yùn)行情況,這樣就可以通過軟件仿真來驗(yàn)證我們設(shè)計的方案有沒有問題,如果有問題,可以重新選擇器件,連接器件,直到達(dá)到我們設(shè)定的目的,避免我們搭建實(shí)物的時候,如果當(dāng)初選擇的方案有問題,我們器件都已經(jīng)焊接好了,再去卸載下去,再去焊接新的方案的器件,測試,這樣會浪費(fèi)人力和物力,也給開發(fā)者帶來一定困惑,Proteus仿真軟件就很好的解決這個問題,我們在設(shè)計之初,就使用該軟件進(jìn)行模擬仿真,測試,選擇滿足我們設(shè)計的最優(yōu)方案。最后根據(jù)測試沒問題的仿真圖紙,焊接實(shí)物,調(diào)試,最終完成本設(shè)計的作品。

wKgZomToaBSAXU_6AAI5AXfitJE374.png


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6076

    文章

    45495

    瀏覽量

    670392
  • 液晶
    +關(guān)注

    關(guān)注

    6

    文章

    627

    瀏覽量

    71287
  • PIC
    PIC
    +關(guān)注

    關(guān)注

    8

    文章

    511

    瀏覽量

    90959
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    一文看懂常用傳感器:溫度、光照、氣體全覆蓋

    對照各類傳感器。01溫度傳感器常用型號:DS18B20、LM35、NTC熱敏電阻工作原理:通過電阻或半導(dǎo)體材料隨溫度變化改變電壓或電流接口類型:模擬輸出、數(shù)字接口
    的頭像 發(fā)表于 01-09 19:03 ?723次閱讀
    一文看懂常用傳感器:<b class='flag-5'>溫度</b>、光照、氣體全覆蓋

    浮思特 | 電子溫度單片機(jī)如何選型?ABOV單片機(jī)提供幾點(diǎn)很關(guān)鍵!

    一個優(yōu)秀的電子溫度計,其核心往往在于內(nèi)部單片機(jī)(MCU)的性能與匹配度。如何選擇一款合適的單片機(jī),實(shí)現(xiàn)精準(zhǔn)、穩(wěn)定、低功耗的溫度測量與交互,是產(chǎn)品開發(fā)中的重要課題。本文將從技術(shù)維度,為大
    的頭像 發(fā)表于 12-15 09:43 ?471次閱讀
    浮思特 | 電子<b class='flag-5'>溫度</b>計<b class='flag-5'>單片機(jī)</b>如何選型?ABOV<b class='flag-5'>單片機(jī)</b>提供幾點(diǎn)很關(guān)鍵!

    要做一個DS18B20的讀取程序,單總線需要配置為輸入或者輸出,怎么配置好?

    目前要做一個DS18B20的讀取程序,單總線需要配置為輸入或者輸出。怎么配置好
    發(fā)表于 11-18 06:30

    使用18b20軟件包報錯怎么解決?

    In file included from ../packages/ds18b20-latest/src/dallas_ds18b20_sensor_v1.c:12:0: C
    發(fā)表于 10-14 06:49

    PIC18F16Q20 Curiosity Nano開發(fā)板技術(shù)解析與應(yīng)用指南

    Microchip Technology PIC18F16Q20 Curiosity Nano套件提供用于評估PIC18-Q20系列微控制器的硬件平臺。PIC18F16Q20微控制器安裝在電路板上
    的頭像 發(fā)表于 10-10 10:31 ?782次閱讀
    <b class='flag-5'>PIC18F16Q20</b> Curiosity Nano開發(fā)板技術(shù)解析與應(yīng)用指南

    STM32項目分享:礦井環(huán)境監(jiān)測系統(tǒng)

    01—項目簡介1.功能詳解STM32礦井環(huán)境監(jiān)測系統(tǒng)功能如下:STM32F103C8T6單片機(jī)作為主控制器DS18B20測量環(huán)境溫度
    的頭像 發(fā)表于 08-16 10:03 ?945次閱讀
    STM32項目分享:礦井環(huán)境監(jiān)測系統(tǒng)

    液體介電常數(shù)測試儀中的溫度控制與熱漂移抑制

    55。同時,溫度波動會使電阻、電容等無源元件參數(shù)改變,晶體管等有源器件工作點(diǎn)偏移,最終影響測量精度。 溫度控制方案設(shè)計 溫度測量模塊 常用溫度傳感器中,熱電偶測量范圍廣但需冷端補(bǔ)償;
    的頭像 發(fā)表于 07-31 13:23 ?646次閱讀
    液體介電常數(shù)測試儀中的<b class='flag-5'>溫度</b>控制與熱漂移抑制

    PIC18F97J60系列數(shù)據(jù)手冊

    PIC單片機(jī)是Microchip公司生產(chǎn)的一類單片機(jī),和馮-諾依曼結(jié)構(gòu)不同的哈佛結(jié)構(gòu),中文手冊對于大家來講可以方便開發(fā)
    發(fā)表于 07-28 16:37 ?0次下載

    給予單片機(jī)溫度控制系統(tǒng)設(shè)計

    、執(zhí)行機(jī)構(gòu)、顯示模塊和電源模塊組成。單片機(jī)是系統(tǒng)的核心,負(fù)責(zé)處理溫度信息并發(fā)出控制指令;溫度傳感器用于實(shí)時采集環(huán)境或物體的溫度數(shù)據(jù),將物理量
    的頭像 發(fā)表于 07-16 10:57 ?675次閱讀

    單片機(jī)實(shí)例項目:DS18B20溫度傳感器

    單片機(jī)實(shí)例項目:DS18B20溫度傳感器,推薦下載!
    發(fā)表于 06-03 20:59

    基于51單片機(jī)的多功能萬年歷設(shè)計

    DS1302DS18B20DHT11PCF8574AT24C02LCD1602MAX7221級聯(lián)等模塊,代碼功能實(shí)現(xiàn)部分:通過按鍵實(shí)現(xiàn)界面切換,按鍵選擇和修改時間,開機(jī)顯示當(dāng)前時間(北京時間),鬧鐘時間存儲具有記憶性,蜂鳴器鬧鐘報警,溫濕度檢測等,當(dāng)前信息主要
    發(fā)表于 06-03 17:17 ?1次下載

    可以滿足不同的低功耗應(yīng)用的PY32F002B單片機(jī)

    PY32F002B 系列單片機(jī)采用高性能的 32 位 ARM? Cortex?-M0+內(nèi)核,寬電壓工作范圍的 MCU。嵌入了24Kbytes Flash 和 3Kbytes SRAM 存儲器,最高
    發(fā)表于 05-29 16:57

    血淚教訓(xùn)總結(jié):Air780EPM的LuatOS二次開發(fā)——OneWire協(xié)議調(diào)試注意事項

    的OneWire通信,大幅提升項目開發(fā)效率。 一、LuatOS 及 OneWire 說明 ? LuatOS 支持 OneWire 通信協(xié)議,本文以 DS18B20 溫度傳感器和 Air780EPM 搭配
    的頭像 發(fā)表于 03-20 17:52 ?1155次閱讀
    血淚教訓(xùn)總結(jié):Air780EPM的LuatOS二次開發(fā)——OneWire協(xié)議調(diào)試注意事項

    最佳實(shí)踐指南:Air780EPM的LuatOS二次開發(fā)——OneWire協(xié)議調(diào)試的注意事項

    在物聯(lián)網(wǎng)設(shè)備開發(fā)中,精準(zhǔn)且穩(wěn)定的數(shù)據(jù)傳輸是構(gòu)建智能系統(tǒng)的核心。 一、LuatOS 及 OneWire 說明 ? LuatOS 支持 OneWire 通信協(xié)議,本文以 DS18B20 溫度傳感器
    的頭像 發(fā)表于 03-17 16:57 ?760次閱讀
    最佳實(shí)踐指南:Air780EPM的LuatOS二次開發(fā)——OneWire協(xié)議調(diào)試的注意事項

    基于FPGA的DS18B20數(shù)字溫度傳感器測溫實(shí)例

    本文將使用三段式狀態(tài)機(jī)(Moore型)的寫法來對DS18B20進(jìn)行測溫操作,以便了解DS18B20和熟悉三段式狀態(tài)機(jī)的寫法。
    的頭像 發(fā)表于 03-17 11:06 ?2459次閱讀
    基于FPGA的<b class='flag-5'>DS18B20</b>數(shù)字<b class='flag-5'>溫度</b>傳感器測溫實(shí)例