色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

proteus:電子秤

Harmony&嵌入式學習 ? 來源:Harmony&嵌入式學習 ? 作者:Harmony&嵌入式學 ? 2023-06-14 11:53 ? 次閱讀
pYYBAGSJOZOAJPWTAAC-gP4w8-I143.png

一、設計說明
電子秤是利用應變電阻,將壓力信號轉變成模擬電壓信號,再利用A/D轉換,將電信號轉換成壓力信號進行壓力測量,測量最大值,10Kg,將測量到的數據通過MODBUS通信協議傳送到上位機
二、設計要求
1.能測量10Kg重物的壓力,并用數碼管顯示輸入及譯碼結果。
在選擇器件時,應考慮成本。
2.采用MODBUS串口調試助手顯示壓力測量值。
3.可選元件:(1)自帶A/D功能的單片機;(2)LCD1602等。
三、實驗要求
1.根據技術指標制定實驗方案;驗證所設計的電路。
2.進行實驗數據處理和分析。

#include 	
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
ulong volt;//測量的電壓值
#define LCD1602_DATAPINS P0
#define TIME 5
sbit LCD1602_E=P2^2;
sbit LCD1602_RW=P2^1;
sbit LCD1602_RS=P2^0;
sbit CLK=P3^7;//定義時鐘信號口
sbit DIN=P3^5;//定義2543數據寫入口
sbit DOUT=P3^4;//定義2543數據讀取口
sbit CS=P3^6;//定義2543片選信號口
uchar datt;
uint ALL_num;
uint Result;
uint Dis_num;


void read2543(uchar addr)
{
	uint ad=0;
	uchar i;
	CLK=0;
	CS=0;//片選段,啟動2543
	addr>=1;
	volt=ad;//取走轉換結果
	volt=volt*2444;//例子的滿量程為5V,轉換分辯率為12位(2的12次方=4096) 。即最大值是255,5/4096=1221mV,即例子中的1V代表實際1221mV        
}


/*******************************************************************************
* 函 數 名         : Lcd1602_Delay1ms
* 函數功能		   : 延時函數,延時1ms
* 輸    入         : c
* 輸    出         : 無
* 說    名         : 該函數是在12MHZ晶振下,12分頻單片機的延時。
*******************************************************************************/
void Lcd1602_Delay1ms(uint c)   //誤差 0us
{
    uchar a,b;
	for (; c>0; c--)
	{
		 for (b=199;b>0;b--)
		 {
		  	for(a=1;a>0;a--);
		 }      
	}
    	
}

/*******************************************************************************
* 函 數 名         : LcdWriteCom
* 函數功能		   : 向LCD寫入一個字節的命令
* 輸    入         : com
* 輸    出         : 無
*******************************************************************************/
void LcdWriteCom(uchar com)	  //寫入命令
{
	LCD1602_E = 0;     //使能
	LCD1602_RS = 0;	   //選擇發送命令
	LCD1602_RW = 0;	   //選擇寫入
	
	LCD1602_DATAPINS = com;     //放入命令
	Lcd1602_Delay1ms(1);		//等待數據穩定

	LCD1602_E = 1;	          //寫入時序
	Lcd1602_Delay1ms(5);	  //保持時間
	LCD1602_E = 0;
}
/*******************************************************************************
* 函 數 名         : LcdWriteData
* 函數功能		   : 向LCD寫入一個字節的數據
* 輸    入         : dat
* 輸    出         : 無
*******************************************************************************/		   	   
void LcdWriteData(uchar dat)			//寫入數據
{
	LCD1602_E = 0;	//使能清零
	LCD1602_RS = 1;	//選擇輸入數據
	LCD1602_RW = 0;	//選擇寫入

	LCD1602_DATAPINS = dat; //寫入數據
	Lcd1602_Delay1ms(1);

	LCD1602_E = 1;   //寫入時序
	Lcd1602_Delay1ms(5);   //保持時間
	LCD1602_E = 0;
}


/*******************************************************************************
* 函 數 名       : LcdInit()
* 函數功能		 : 初始化LCD屏
* 輸    入       : 無
* 輸    出       : 無
*******************************************************************************/		   
void LcdInit()						  //LCD初始化子程序
{
 	LcdWriteCom(0x38);  //開顯示
	LcdWriteCom(0x0c);  //開顯示不顯示光標
	LcdWriteCom(0x06);  //寫一個指針加1
	LcdWriteCom(0x01);  //清屏
	LcdWriteCom(0x80);  //設置數據指針起點
}




//按指定位置顯示一個字符
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)
{
 Y &= 0x1;
 X &= 0xF; //限制X不能大于15,Y不能大于1
 if (Y) X |= 0x40; //當要顯示第二行時地址碼+0x40;
 X |= 0x80; // 算出指令碼
 LcdWriteCom(X); //這里不檢測忙信號,發送地址碼
 LcdWriteData(DData);
}
//按指定位置顯示一串字符
void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)
{
 unsigned char ListLength;

  ListLength = 0;
 Y &= 0x1;
 X &= 0xF; //限制X不能大于15,Y不能大于1
 while (DData[ListLength]>=0x20) //若到達字串尾則退出
  {
   if (X <= 0xF) //X坐標應小于0xF
    {
     DisplayOneChar(X, Y, DData[ListLength]); //顯示單個字符
     ListLength++;
     X++;
    }
  }
}
void UsartInit()
{
	 TMOD=0x20;		   //設T1為方式2(8位自動重裝載) T0為方式1(16位)
	 TH1=0xf3;         //定時器1定時12us
	 TL1=0xf3;
	 TR1=1;            //開定時器1
	 SCON=0x50;        //SCON 是一個特殊功能寄存器,用以設定串行口的工作方式、接收/發送控制以及設置狀態標志
	 PCON=0x80;        //串口波特率加倍
	 ES=1;             //串口中斷允許位
	 EA=1;			   //開啟總中斷	
}

void Uart1Send(uchar c)
{
	SBUF=c;
	while(!TI);
	TI=0;	
}
void Uart1Sends(uchar *str)
{
	while(*str!='?')
	{
		SBUF=*str;
		while(!TI);
		TI=0;
		str++;
	}
}



void main(void)
{
	UsartInit();
	LcdInit();
	EX0=1;       //外部中斷0開()  EX1 為外部中斷1 (P3^3)
	IT0=1;        //低電平觸發   IT1為中斷1
	DisplayListChar(1,0,"Measure System");
	DisplayOneChar(2,1,'.');
	DisplayOneChar(5,1,'K');
	DisplayOneChar(6,1,'g');
	while(1)
	{
	read2543();
	DisplayOneChar(0,1,(char)(volt/10000000)+'0');
	DisplayOneChar(1,1,(char)(volt/1000000%10)+'0');
	DisplayOneChar(3,1,(char)(volt/100000%10)+'0');
	DisplayOneChar(4,1,(char)(volt/10000%10)+'0');
	Lcd1602_Delay1ms(200);
	}				
}


void Key_INT( )  interrupt 0  // 這里0對應下表
{
	uchar buff[8],datt1;
	Uart1Sends("NOW WIGHT:"); 
	buff[0] = (char)(volt/10000000)+'0';
	buff[1] = (char)(volt/1000000%10)+'0';
	buff[2] = '.';
	buff[3] = (char)(volt/100000%10)+'0';
	buff[4] = (char)(volt/10000%10)+'0';
	buff[5] = 'K';
	buff[6] = 'g';
	for(datt1=0;datt1
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Proteus
    +關注

    關注

    79

    文章

    1692

    瀏覽量

    106515
  • 串口
    +關注

    關注

    14

    文章

    1551

    瀏覽量

    76421
  • 電子秤
    +關注

    關注

    23

    文章

    214

    瀏覽量

    44313
收藏 人收藏

    評論

    相關推薦

    電子秤proteus仿真+程序資料

    本帖最后由 eehome 于 2013-1-5 09:51 編輯 電子秤proteus仿真+程序資料
    發表于 08-20 11:16

    電子秤proteus仿真+程序資料

    0150、電子秤proteus仿真+程序資料
    發表于 09-09 18:22

    求個電子秤proteus仿真

    求個電子秤proteus仿真
    發表于 05-05 15:48

    電子秤

    電子秤 電子秤
    發表于 09-23 15:12 ?2549次閱讀
    <b class='flag-5'>電子秤</b>

    電子秤proteus仿真+程序資料

    應變式電子秤系統設計,proteus仿真和仿真的程序資料
    發表于 11-10 10:03 ?55次下載

    1602電子秤proteus仿真+源程序

    1602電子秤proteus仿真+源程序
    發表于 12-21 17:53 ?36次下載

    電子秤proteus仿真程序資料

    電子秤proteus仿真程序資料,很好的設計資料,快來下載學習吧。
    發表于 05-10 10:35 ?73次下載

    基于proteus仿真的電子秤

    這是基于proteus仿真電子秤哦!作者本人最近做了個電子秤的有關項目,所以呢,和大家分享一下。仿真文件就在壓縮包里面哦,自己去下載,也不要吝嗇那一點積分吶。
    發表于 01-24 16:00 ?106次下載

    單片機設計的電子秤proteus仿真和程序資料

    本文檔的主要內容詳細介紹的是單片機設計的電子秤proteus仿真和程序資料。
    發表于 10-22 08:00 ?104次下載
    單片機設計的<b class='flag-5'>電子秤</b><b class='flag-5'>proteus</b>仿真和程序資料

    電子秤Proteus仿真程序資料合集免費下載

    本文檔的主要內容詳細介紹的是電子秤Proteus仿真程序資料合集免費下載。
    發表于 02-14 08:00 ?82次下載
    <b class='flag-5'>電子秤</b><b class='flag-5'>Proteus</b>仿真程序資料合集免費下載

    數字電子秤proteus仿真和程序資料免費下載

    本文檔的主要內容詳細介紹的是數字電子秤proteus仿真和程序資料免費下載。
    發表于 07-01 08:00 ?58次下載
    數字<b class='flag-5'>電子秤</b>的<b class='flag-5'>proteus</b>仿真和程序資料免費下載

    如何選購電子秤

    吊鉤人們在去超市購買蔬菜水果的時候都會看到工作人員使用電子秤來給商品稱重,所以在一般人的印象中,電子秤就是臺秤,而不同類型的電子秤之間的最大差別就是設備的大小不同。其實現在
    發表于 03-27 11:18 ?2610次閱讀

    電子秤proteus仿真+程序資料分享

    電子秤proteus仿真+程序資料分享下載。
    發表于 05-07 09:19 ?22次下載

    Proteus中arduino的電子秤仿真設計資料

    Proteus中arduino的電子秤仿真設計資料
    發表于 11-30 10:46 ?27次下載

    基于單片機電子秤proteus仿真設計包含仿真及源程序

    基于單片機電子秤proteus仿真設計包含仿真及源程序
    發表于 04-20 15:08 ?8次下載
    主站蜘蛛池模板: 女性露出奶头流出精子| 麻豆XXXX乱女少妇精品| 韩国电影real在线观看完整版| 国产午夜永久福利视频在线观看 | 亚洲免费无码中文在线亚洲在| 亚洲 色 欧美 爱 视频 日韩| 亚洲理论片在线中文字幕| 一级做a爰片久久毛片免费 | 亚洲欧美中文日韩视频| 在线免费观看国产精品| a级毛片黄免费a级毛片| 动漫AV纯肉无码AV电影网| 国产一区二区波多野结衣| 久久无码人妻中文国产| 人妻少妇偷人精品无码洋洋AV | 小女生RAPPER入口| 云南14学生真实初次破初视频| 99re6热这里在线精品视频| 耻辱の奴隷淑女中文字幕| 国产午夜精品视频在线播放| 久久久视频2019午夜福利| 欧美丰满熟妇BBB久久久| 我和黑帮老大第365天第2季在线| 一个人免费完整观看日本| av av在线| 国产一区二区精品视频| 蜜桃色欲AV久久无码精品| 双腿被绑成M型调教PLAY照片| 印度性hd18| 边吃胸边膜下床震免费版视频| 国产亚洲日韩欧美视频| 免费国产综合视频在线看| 我的年轻漂亮继坶三级| 2020精品国产视| 国产精品无码久久av| 美女18黄| 亚洲国产中文字幕在线视频综合| 99视频免费看| 精品无人区麻豆乱码无限制| 日本熟妇乱人伦A片精品软件| 伊人久久大香线蕉观看|