日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

基于单片机的坐姿提醒系统设计(#0475)

發布時間:2023/12/14 windows 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于单片机的坐姿提醒系统设计(#0475) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

功能描述

1、采用51/52單片機(通用)作為主控芯片;
2、采用超聲波傳感器檢測人員距離,精度1毫米;
3、采用LCD1602顯示"當前人員距離"和"合理距離";
4、可通過按鍵設置合理距離的上限H和下限L;
5、當距離大于H值或小于L值,開啟蜂鳴器。?

電路設計

采用Altium?Designer作為電路設計工具。Altium?Designer通過把原理圖設計、PCB繪制編輯、拓撲邏輯自動布線、信號完整性分析和設計輸出等技術的完美融合,為設計者提供了全新的設計解決方案,使設計者可以輕松進行設計,熟練使用這一軟件必將使電路設計的質量和效率大大提高。

單片機管腳說明:

P0端口(P0.0-P0.7):P0口為一個8位漏極開路雙向I/O口,每個引腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。

P1端口(P1.0-P1.7):P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高電平,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。

P2端口(P2.0-P2.7):P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口,用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。

P3端口(P3.0-P3.7):P3口管腳是一個帶有內部上拉電阻的8位的雙向I/O端口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入端時,由于外部下拉為低電平,P3口將輸出電流(ILL)。P3口同時為閃爍編程和編程校驗接收一些控制信號。

仿真設計

采用Proteus作為仿真設計工具。Proteus是一款著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協同仿真,一鍵切換到PCB設計,真正實現了從概念到產品的完整設計。

主程序設計

void main(void) //主函數 {LCD1602_init();//液晶初始化//0123456789ABCDEFLCD1602_Disp_ZF(0x80," Now S: CM ",16);//0123456789ABCDEFLCD1602_Disp_ZF(0x80+0X40,"Set H L ",16);TMOD=0x11; //設T0為方式1,GATE=1;TH0=0; //定時器清零TL0=0; //定時器清零TH1=0xf8; //2MS定時TL1=0x30; //2MS定時ET0=1; //允許T0中斷ET1=1; //允許T1中斷TR1=1; //開啟定時器EA=1; //開啟總中斷EA=0;//關閉中斷//SET_H = ISP_READ(0x2c00)*256+ISP_READ(0x2c01);//讀取存儲的最大值//SET_L = ISP_READ(0x2c02)*256+ISP_READ(0x2c03);//讀取存儲的最小值EA=1; //開啟總中斷while(1)//函數循環{while(!RX); //當RX為零時等待TR0=1; //開啟計數while(RX); //當RX為1計數并等待TR0=0; //關閉計數Conut(); //計算顯示距離函數/if((S>SET_H)||(S<SET_L)) //水位過低過高報警,{LED=0;SPEAK=0; //報警}else {LED=1;SPEAK=1; //不報警}if(!KEY1) //切換設置最大值和最小值{Delay_ms(10);//延時去抖動if(!KEY1)//切換設置最大值和最小值{KEY_flag++; //模式選擇//ISP_ERASE(0x2c00); //注意:字節編程時必須要先要擦除整個扇區 //ISP_PROGRAM(0x2c00, SET_H/256); //記憶存儲//ISP_PROGRAM(0x2c01, SET_H);//記憶存儲//ISP_PROGRAM(0x2c02, SET_L/256);//記憶存儲//ISP_PROGRAM(0x2c03, SET_L); //記憶存儲}while(!KEY1);//等待按鍵抬起}

源文件獲取

關注公眾號-電子開發圈,首頁發送?“坐姿” 獲取;

總結

以上是生活随笔為你收集整理的基于单片机的坐姿提醒系统设计(#0475)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。