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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3775|回復: 2
打印 上一主題 下一主題
收起左側(cè)

家用應(yīng)急電源設(shè)計-51單片機代碼+原理圖+流程圖

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:892833 發(fā)表于 2021-3-17 10:09 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
軟件設(shè)計
本設(shè)計主要是對突發(fā)停電或電路故障等做出的自動切換備用電源的設(shè)計,主要針對檢測到電路中正常電壓為0V時,說明停電或電路故障,這時自動切換備用電池,提供用電。其次還會對電池電量進行檢測,防止過充等情況。

電路原理圖如下:


4.1 主程序
在程序開始以前我們要進行引腳的初始化,首先需要對adc0832芯片進行初始化,然后對LCD1602初始化并對其進行賦值,隨后初始化界面顯示。進入到while循環(huán)中,先檢測市電電壓值,如果電壓值為0,則報警提醒斷電或電路故障,并切換電池供電。隨后對電池電壓進行檢測,如果電壓值小于20v或大于25v,說明電池電壓異常,停止充電,并報警;如果電壓值大于等于20v小于24v,則正常充電;如果電壓值大于等于24v小于等于25v,則停止充電。
圖 4.1主流程圖



4.2 電池電壓檢測程序
每次運行前面都要初始化單片機,再初始化adc模塊,然后采集我們需要的電池電壓值并判斷電壓的值,如果電壓值小于20v或大于25v,說明電池電壓異常,停止充電,并報警;如果電壓值大于等于20v小于24v,則正常充電;如果電壓值大于等于24v小于等于25v,表面已充滿,則停止充電。
圖4.2 電池電壓檢測流程圖


4.3 LCD顯示程序
初始化LCD1602,剛開始第一行顯示“INPUT:000v”,第二行顯示“BAT:00.0v”。后面讀取實時的電壓值后填入第一行的數(shù)值處,替代原先位置,第二行也是同樣的操作。
圖4.3 LCD顯示運行流程圖



單片機源程序如下:
  1. #include <reg52.h>
  2. #include <intrins.h>
  3. #include <math.h>
  4. #define uchar  unsigned char
  5. #define uint   unsigned int
  6. #define ulong   unsigned long
  7. #include "1602.h"
  8. #include "ad.h"        


  9. sbit beer=P1^0;//蜂鳴器
  10. sbit out=P2^3;        //負載
  11. sbit bat=P2^4;        //充電
  12. //喇叭控制
  13. void beerc()
  14. {
  15.   beer=0;_delay_ms(500);
  16.   beer=1;_delay_ms(500);
  17. }



  18. //顯示充電參數(shù)------------------------------
  19. void xianshi()
  20. {
  21.         uint u1=0;        //充電電壓
  22.         uint u2=0; //被充電電壓

  23.    u1=adc0832(0)*(uint)300/(uint)255;        //市電電壓
  24.    u2=adc0832(1)*(uint)300/(uint)255;        //電池電壓

  25.    lcd1602_adr(0x07);
  26.    lcd1602_writenumber(0x30+u1%1000/100);
  27.    lcd1602_writenumber(0x30+u1%100/10);
  28.    lcd1602_writenumber(0x30+u1%10);

  29.    lcd1602_adr(0x45);
  30.    lcd1602_writenumber(0x30+u2%1000/100);         
  31.    lcd1602_writenumber(0x30+u2%100/10);         
  32.    lcd1602_writenumber('.');
  33.    lcd1602_writenumber(0x30+u2%10);         

  34.         if(u1 == 1)
  35.         {
  36.                 beerc();
  37.                 bat = 1;
  38.                 out=1;
  39.         }
  40.         else
  41.         {
  42.                 out=0;
  43.         }

  44.         if(u1 != 1 && (u2 >= 200 && u2 < 240))
  45.         {
  46.                 bat = 0;
  47.         }
  48.         if(u2 >= 240 && u2 <= 250)
  49.         {
  50.                 bat = 1;
  51.         }
  52.         if(u2 < 200 || u2 > 250)
  53.         {
  54.                 bat = 1;
  55.                 beerc();
  56.         }
  57. }
  58. //主函數(shù)
  59. void main()
  60. {
  61.   //初始化
  62.   lcd1602_init();
  63.         _delay_ms(10);

  64.         LCD1602_string(1,2,"INPUT:000v");
  65.   LCD1602_string(2,2,"BAT:00.0v   ");

  66.   while(1)
  67.   {
  68.    xianshi();
  69. }
  70. }
復制代碼

以上資料51hei提供下載(方便保存):
水平有限,僅供參考: 源程序.7z (56.74 KB, 下載次數(shù): 37)
上文的Word版(和網(wǎng)頁上的內(nèi)容一樣): 軟件設(shè)計.doc (346.5 KB, 下載次數(shù): 23)

評分

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

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:584814 發(fā)表于 2021-3-30 20:43 | 只看該作者
必是想當然或許可仿真的程序。繼電器上一個二極管都不放純屬胡老師的
回復

使用道具 舉報

板凳
ID:1069178 發(fā)表于 2023-3-31 01:53 來自手機 | 只看該作者
出現(xiàn)這是是怎么回事喲

-46358dfa7dc10544.jpg (104.57 KB, 下載次數(shù): 86)

-46358dfa7dc10544.jpg
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美激情亚洲 | 中文字幕成人 | 国产高清视频一区二区 | 国产亚洲一区二区精品 | 日韩中文一区 | 精产嫩模国品一二三区 | 日本中文字幕一区 | 日韩一二区 | 一区二区免费看 | 九九热精品视频 | 蜜臀网 | 成人性视频在线播放 | 亚州午夜精品 | 久久国 | 在线观看中文字幕 | 大象视频一区二区 | 男女在线免费观看 | 欧美一区免费 | 欧美日韩一区二区在线观看 | 少妇一级淫片免费播放 | 国产在线观看一区二区 | 日日夜夜免费精品视频 | 九一国产精品 | 国产一区二区三区在线 | 欧美日韩国产精品一区二区 | 久久综合一区 | 一区二区在线免费观看 | 美女黄网站视频免费 | 欧美专区日韩 | 免费在线一区二区三区 | 精品一区二区三区四区 | 人人cao | 亚洲综合99| 激情欧美日韩一区二区 | 成人福利视频 | 麻豆精品一区二区三区在线观看 | 亚洲情侣视频 | 亚洲美女在线视频 | 久久精品 | 国产日韩欧美精品一区二区三区 | 日韩在线免费观看视频 |