Proteus8软件_Proteus软件

proteus keypad使用方法

admin527710个月前 proteus相关820

鈥?0銆並eyPad

鐭╅樀閿洏锛?a href="https://so.csdn.net/so/search?q=Proteus&spm=1001.2101.3001.7020" target="_blank" class="hl hl-1" data-report-click="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=Proteus&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"Proteus\"}"}" data-tit="Proteus" data-pretit="proteus">Proteus鎻愪緵浜嗗绉嶇煩闃甸敭鐩橈紝鏈夎绠楀櫒锛岀數璇濇満锛屼互鍙婅嚜瀹氫箟鐨勫竷灞€锛屽皝瑁呭涓寜閿洿褰㈣薄鐢熷姩銆?/p>

 

鍐嶈鐭╅樀閿洏鐨勫師鐞嗗墠锛岃繕鏄璁蹭负浠€涔堢敤鐭╅樀閿洏锛?/p>

褰撴寜閿暟閲忓緢澶氭椂锛屼负浜嗚妭绾O鐨勮祫婧愶紝閫氬父浼氬皢鎸夐敭鎺掑垪鎴愮煩闃靛舰寮忥紝姣忎釜鎸夐敭閫氳繃琛屽拰鍒楁潵璇嗗埆锛屼緥濡?涓狪O鍙瘑鍒?*4=16涓寜閿紝姣旂洿鎺ラ┍鍔?涓寜閿浜嗕竴鍊嶃€?/p>

鍘熺悊鈥斺€旈珮浣庣數骞崇炕杞硶锛氾紙浠A0-PA7涓轰緥锛孭A0-3鏄锛孭A4-7鏄垪锛?/p>

脴榛樿鐘舵€丳A0-7鍏ㄩ儴杈撳嚭楂樼數骞?,锛?/p>

脴鐒跺悗琛孭A0-PA3璁句负杈撳嚭锛屼笖涓?锛孭A4-PA7璁句负杈撳叆锛岀劧鍚庢娴婸A4-7寮曡剼鐢靛钩鐨勫彉鍖栵紝渚嬪+鎸夐敭鎸変笅鍚庯紝PA7=PA3=0锛屽叾浣欎笉鍙橈紝閭d箞PA7-PA0鐢靛钩涓猴細01110000锛?/p>

脴鎺ョ潃鍒桺A4-PA7璁句负杈撳嚭锛屼笖涓?锛孭A0-PA3璁句负杈撳叆锛岀劧鍚庢娴婸A0-3寮曡剼鐢靛钩鐨勫彉鍖栵紝渚嬪+鎸夐敭鎸変笅鍚庯紝PA3=PA7=0锛屽叾浣欎笉鍙橈紝閭d箞PA7-PA0鐢靛钩涓猴細00000111锛?/p>

脴鏈€鍚庡皢琛屽垪鎵弿缁撴灉浣嶆垨锛屽嵆0111000|00001110=01110111=0x77锛岃繖鏍峰氨鍙互鍖哄垎16涓寜閿殑閿€间簡锛堝綋娌℃湁鎸夐敭妫€娴嬪埌鏃讹紝榛樿鍏?锛夈€?/p>

鍏蜂綋缂栫▼濡備笅锛?/p>

鍔熻兘锛氱煩闃甸敭鐩?*4鎵弿锛孡CD1602鏄剧ず瀵瑰簲閿€硷紝鍙互缁х画娣诲姞涓€浜涢€昏緫鍑芥暟鏋勬垚璁$畻鍣ㄥ姛鑳姐€?/p>

浠跨湡瑙嗛

  1. /**
  2. ******************************************************************************
  3. * @file main.c
  4. * @author Alex鈥斺€斿皬鐧?/div>
  5. * @version V1.0
  6. * @date 2021.1.20
  7. * @brief 渚嬬▼鍔熻兘缂栧啓
  8. * @store Proteus浠跨湡搴楀瓙鈥斺€斿叕浼楀彿
  9. * @Link https://shop484534014.taobao.com/
  10. * @Email 844545015@qq.com
  11. ******************************************************************************
  12. * @attention All Rights Reserved
  13. **/
  14. 鈥?/div>
  15. #include <main.h>
  16. void main(void)
  17. {
  18. uint8_t i = 0;
  19. KeyPad.Init();
  20. LCD.LCD1602_Init();
  21. 鈥?/div>
  22. while(1)
  23. {
  24. if(KeyPad.KeyValue() != 0xff) //鎸夐敭妫€娴?/div>
  25. {
  26. Delay.Delay_ms(120); //娑堟姈
  27. if(KeyPad.KeyValue() != 0xff)
  28. {
  29. LCD.LCD1602_WriteChar(0,i++,KeyPad.KeyValue());
  30. if(i > 16)i = 0;
  31. }
  32. }
  33. }
  34. }

濡傞渶Proteus鍜孖AR瀹夎鍖呬互鍙夾VR缂栫▼鍙傝€冩墜鍐岋紝璇峰叧娉ㄥ叕浼楀彿锛?/p>

Proteus浠跨湡搴楀瓙

鍙€氳繃鏌ョ湅鍘嗗彶璁板綍锛屾煡鐪嬫簮鐮佸拰浠跨湡宸ョ▼

锛堣嫢闇€Proteus鍜孖AR瀹夎鍖呬互鍙夾VR缂栫▼鍙傝€冩墜鍐岋紝鍚庡彴鍥炲锛?strong>AVR锛涜嫢闇€鍏跺畠璁捐锛屽悗鍙板洖澶嶏細AVR璁捐锛?/p>

馃帇1. 鍩烘搷

馃尶1.1 Proteus姒傚喌

  • 鑻卞浗Lab Center Electronics鍏徃鍑虹増鐨?strong>EDA宸ュ叿杞欢銆?/li>
  • 涓嶄粎鏈夊叾瀹僂DA宸ュ叿杞欢鐨勪豢鐪熷姛鑳斤紝杩樿兘浠跨湡鍗曠墖鏈哄強澶栧洿鍣ㄤ欢銆?/li>
  • 鏄瘮杈冨ソ鐨勪豢鐪熷崟鐗囨満鍙婂鍥村櫒浠剁殑宸ュ叿銆?/li>
  • 浠庡師鐞嗗浘甯冨浘銆佷唬鐮佽皟璇曞埌鍗曠墖鏈轰笌澶栧洿鐢佃矾鍗忓悓浠跨湡锛屼竴閿垏鎹㈠埌PCB璁捐锛岀湡姝e疄鐜颁簡浠庢蹇靛埌浜у搧鐨勫畬鏁磋璁°€?/li>
  • 涓栫晫涓婂敮涓€灏嗙數璺豢鐪熻蒋浠躲€丳CB璁捐杞欢鍜岃櫄鎷熸ā鍨嬩豢鐪熻蒋浠朵笁鍚堜竴鐨勮璁″钩鍙般€?/li>
  • 鍏跺鐞嗗櫒妯″瀷鏀寔8051銆丄VR銆丄RM銆?086绛夛紝骞舵寔缁鍔犲叾浠栫郴鍒楀鐞嗗櫒妯″瀷銆?/li>
  • 鍦ㄧ紪璇戞柟闈紝瀹冩敮鎸両AR銆並eil鍜孧ATLAB绛夊绉嶇紪璇戝櫒銆?/li>

馃尶1.2 鐩稿叧涔︾睄

  1. 鑼冩捣缁嶏紝鏉庢柟鍥瓑缂栬憲. 闆惰捣鐐瑰Proteus鍗曠墖鏈轰豢鐪熸妧鏈痆M]. 鍖椾含锛氭満姊板伐涓氬嚭鐗堢ぞ, 2012.02.
  2. 寰愪寒缂? 楂樼瓑鑱屼笟鏁欒偛绮惧搧宸ョ▼绯诲垪鏁欐潗 STM32鍗曠墖鏈哄紑鍙戝疄渚?鍩轰簬Proteus铏氭嫙浠跨湡涓嶩AL\LL搴揫M]. 鍖椾含锛氱數瀛愬伐涓氬嚭鐗堢ぞ, 2021.01.
  3. 绗﹀己. 宓屽叆寮忓疄楠屼笌瀹炶返鏁欑▼ 鍩轰簬STM32涓嶱roteus[M]. 瑗垮畨锛氳タ瀹夌數瀛愮瀛︽妧鏈ぇ瀛﹀嚭鐗堢ぞ, 2021.12.
  4. 璧靛箍鍏冪紪钁? Proteus杈呭姪鐨勫崟鐗囨満鍘熺悊瀹炶返鍩虹璁捐璇剧▼璁捐鍜屾瘯涓氳璁M]. 鍖椾含鑸┖鑸ぉ澶у鍑虹増绀? 2013.09.

馃尶1.3 鑳屾櫙璁剧疆

馃崈1.3.1 棰滆壊淇敼

Template鈥揝et Design Defaluts
Paper Colour锛堣儗鏅壊锛?Grid Colour锛堢綉鏍奸鑹诧級
缃戞牸绾夸慨鏀?br> Toggle grid
鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?><br> 鏈変笁绉嶏細鏃犮€佹牸瀛愮嚎銆佺偣</p> </p>
<p><h3>馃崈1.3.2 鍏冨櫒浠舵煡鎵?/h3> </p>
<p><p><mark>鐩存帴杈撳叆鍏冨櫒浠跺悕绉版煡鎵?/mark><br> 鍙抽敭鈥揚lace鈥揅omponent鈥揊rom Libraries<br> 鍦ㄥ叧閿瓧锛圞eywords锛夋枃鏈涓洿鎺ヨ緭鍏ヤ綘鎯虫煡鎵剧殑鍏冨櫒浠跺悕绉帮紝澶у皬鍐欐棤鍏筹紝鑻ヨ鍏冨櫒浠跺瓨鍦紝灏变細鍦ㄤ腑闂寸殑缁撴灉锛圧esults锛夋涓嚭鐜帮紝鐒跺悗鐢ㄩ紶鏍囧乏閿弻鍑诲嚭鐜板湪妗嗕腑鍏冨櫒浠剁殑鍚嶇О锛屽皢璇ュ厓鍣ㄤ欢鏀惧叆鈥滃厓鍣ㄤ欢鍒楄〃绐楀彛鈥濄€?/p> </p>
<p><h3>馃崈1.3.3 鍣ㄤ欢娓呭崟</h3> </p>
<p><div class=

Proteus鍏抽敭璇?/th>鍏冨櫒浠?/th>
AT89C51AT89C51鍗曠墖鏈?/td>
RES鐢甸樆
LED-YELLOW榛勮壊鍙戝厜浜屾瀬绠?/td>
CRYSTAL鏅舵尟
CAP鐢靛銆愭棤鏋佹€с€?/td>
CAP-POL鐢靛銆愭湁鏋佹€с€?/td>
7SEG-MPX4-CC4浣嶅叡闃存瀬鏁扮爜绠?/td>
COMPIM铏氭嫙涓插彛鍏冧欢
BUTTON鎸夐敭
74LS47BCD-7娈垫暟鐮佺璇戠爜鍣?/td>
KEYPAD-SMALLCALC灏忓瀷璁$畻鍣ㄩ敭鐩?/td>
RESPACK-8鎺掗樆
MOTOR鐢垫満

馃崈1.3.4 鍣ㄤ欢鏃嬭浆

閫変腑鍣ㄤ欢鈥撳彸閿?br> 鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?><br> Rotate Clockwise锛氶『鏃堕拡鏃嬭浆<br> Rotate Anti-Clockwise锛氶€嗘椂閽堟棆杞?br> Rotate 180 degrees锛氭棆杞?80掳<br> X-Mirror锛氭按骞冲鎶?br> Y-Mirror锛氱珫鐩村鎶?/p> </p>
<p><h1>馃帇2. 51鍗曠墖鏈篜roteus浠跨湡</h1> </p>
<p><h2>馃尶2.1 鐐逛寒涓€涓伅</h2> </p>
<p><h3>馃崈2.1.1 鍣ㄤ欢娓呭崟</h3> </p>
<p><div class=

Proteus鍏抽敭璇?/th>鍏冨櫒浠?/th>
AT89C51AT89C51鍗曠墖鏈?/td>
RES鐢甸樆
LED-YELLOW榛勮壊鍙戝厜浜屾瀬绠?/td>

馃崈2.1.2 鐢佃矾

鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?></p> </p>
<p><h3>馃崈2.1.3 浠g爜</h3> </p>
<p><pre data-index=#include //鍗曠墖鏈哄ご鏂囦欢

sbit LED=P0^0; //瀹氫箟LED涓虹鍙0锛?

void main() //涓荤▼搴?/span>

{

while(1) //鏃犻檺寰幆

{

LED=0; //P0锛?杈撳嚭浣庣數骞筹紝鍙戝厜浜屾瀬绠$偣浜?/span>

//LED=1; //P0锛?杈撳嚭楂樼數骞筹紝鍙戝厜浜屾瀬绠″叧闂?/span>

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

馃尶2.2 娴佹按鐏?/h2>

馃崈2.2.1 鍣ㄤ欢娓呭崟

Proteus鍏抽敭璇?/th>鍏冨櫒浠?/th>
AT89C51AT89C51鍗曠墖鏈?/td>
RES鐢甸樆
LED-YELLOW榛勮壊鍙戝厜浜屾瀬绠?/td>

馃崈2.2.2 鐢佃矾

鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?><br> 1銆佺敾涓€鏉℃€荤嚎<br> <img src=#include //鍗曠墖鏈哄ご鏂囦欢

void Delay(); //寤舵椂瀛愮▼搴忚鏄?/span>

void main() //涓荤▼搴?/span>

{

unsigned char i;

unsigned char temp;

P0=0xff; //浜岃繘鍒?1111111

while(1) //鏃犻檺寰幆

{

temp=0x80; //浜岃繘鍒?0000000

for(i=0;i<8;i++)

{

P0=~temp; //鍙栧弽

Delay(); //寤舵椂

temp=temp>>1 //鍙崇Щ涓€浣?/span>

}

}

}

/*寤舵椂瀛愮▼搴忎娇LED鍦ㄥ彉鍖栨椂鏈変竴涓仠鐣欐椂闂达紝閫氳繃涓€涓寰幆鍜屽唴寰幆鐨勭┖鎿嶄綔锛?

*鍏卞惊鐜?55脳255娆? */

void Delay()

{

unsigned char i,j;

for(i=0;i<255;i++) //澶栧惊鐜?55娆?/span>

for(j=0;j<255;j++); //鍐呭惊鐜?55娆?/span>

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

鏃堕挓棰戠巼 Clock Frequency 12MHz

馃尶2.3 涓€浣?a href="https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020" target="_blank" class="hl hl-1" data-report-view="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"鏁扮爜绠"}"}" data-report-click="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"鏁扮爜绠"}"}" data-tit="鏁扮爜绠? data-pretit="鏁扮爜绠?>鏁扮爜绠?/a>璁℃暟鐢佃矾

馃崈2.3.1 鍣ㄤ欢娓呭崟

Proteus鍏抽敭璇?/th>鍏冨櫒浠?/th>
AT89C51AT89C51鍗曠墖鏈?/td>
RES鐢甸樆
BUTTON鎸夐敭
7SEG-COM-AN-GRN鏁扮爜绠?缁胯壊)

鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?></p> </p>
<p><h3>馃崈2.3.2 鐢佃矾</h3> </p>
<p><p>鑷姩锛?br> <img src=#include

unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};

//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃

void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭

{

unsigned char i,j;

for(i=0;i<255;i++)

for(j=0;j<255;j++);

}

void main()//涓荤▼搴?/span>

{

unsigned char i=1;

while(1)

{

P0=Tab[i];//閫佺浉搴旂爜娈佃〃鍊?/span>

Delay();

i++;

if(i>9) i=0;

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22


涓€浣嶆暟鐮佺鎵嬪姩璁℃暟浠g爜

#include 

unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};

//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃

unsigned char p=1;

void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭

{

unsigned char i;

for(i=300;i>0;i--);

}

void main()//涓荤▼搴?/span>

{

EA=1;//寮€鎬诲厑璁稿紑鍏?/span>

IT0=1;EX0=1;//寮€澶栭儴涓柇0鍜屽閮ㄤ腑鏂?鍏佽鍒嗗紑鍏?/span>

IT1=1;EX1=1;//寮€澶栭儴涓柇1鍜屽閮ㄤ腑鏂?鍏佽鍒嗗紑鍏?/span>

while(1)

{

P0=Tab[p]; //杈撳嚭鐮佹琛?/span>

Delay();

}

}

void intersvr0(void) interrupt 0 using 1 //澶栭儴涓柇0澶勭悊瀛愮▼搴?/span>

{

p++;

if(p>9) p=9;

}

void intersvr1(void) interrupt 2 using 1 //澶栭儴涓柇1澶勭悊瀛愮▼搴?/span>

{

p--;

if(p<1) p=1;

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

馃尶2.4 鍥涗綅鏁扮爜绠¤鏃跺櫒

馃崈2.4.1 鍣ㄤ欢娓呭崟

Proteus鍏抽敭璇?/th>鍏冨櫒浠?/th>
AT89C51AT89C51鍗曠墖鏈?/td>
RES鐢甸樆
7SEG-MPX4-CA4浣嶆暟鐮佺

馃崈2.4.2 鐢佃矾

鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?></p> </p>
<p><h3>馃崈2.4.3 浠g爜</h3> </p>
<p><p>0锝?00鑷姩璁℃暟锛屽惊鐜線澶?/p> </p>
<p><pre data-index=#include

unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};

//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃

unsigned char Dat[]={0,0,0,0};

unsigned char tmp,i,j;

unsigned char p=0

void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭

{

unsigned char i;

for(i=0;i<n;i++);

}

void main()//涓荤▼搴?/span>

{

while(1)

{

p++;

if(p>500) p=0;

Dat[0]=p/100; //鐧句綅

Dat[1]=p%100/10;//鍗佷綅

Dat[2]=p%10;//涓綅

tmp=0x01;

for(i=0;i<3;i++)

{

P2=tmp;

P0=Tab[Dat[i]];

tmp=tmp<<1;

Delay(250);

}

for(i=0;i<150;i++)

for(j=0;j<100;j++)

Delay(60000);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34


馃帇3. 閬囧埌鐨勪竴浜沞rrors

馃尶3.1 No power supply specified for net VDDA鈥?/h2>

No power supply specified for net VDDA in Power Rail Configuration.
No power supply specified for net VDDA in Power Rail Configuration.
瑙e喅鏂规硶锛?br> Design->Powe Rail Configuration
灏哣DDA銆乂SSA绉诲叆鍙宠竟锛屽苟鍙栨秷鍕鹃€夆€渦se default power rail connections鈥?br> 鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩?></p> </p>
<p><hr></p>
<p>                </p>
<p>                    <p><strong>鈥婣SM17_KeyPad4X4锛氱煩闃甸敭鐩橈紝LCD1602鏄剧ず鎸夐敭鍊笺€?/strong></p> </p>
<p><p>(娉ㄦ剰浠g爜鏄剧ず涓嶅叏锛屾渶涓嬮潰鏈塊eil婧愮爜鍜?a href=Proteus宸ョ▼)

浠跨湡瑙嗛

  1. /**
  2. ******************************************************************************
  3. * @file KeyPad.asm
  4. * @author Alex鈥斺€斿皬鐧?/div>
  5. * @version V1.0
  6. * @date 2019.9.1
  7. * @brief 4X4鐭╅樀閿洏锛孡CD1602鏄剧ず鎸夐敭鍊?/div>
  8. * @store 鏈夊Proteus浠跨湡搴楀瓙
  9. * @Link https://shop484534014.taobao.com/
  10. * @Email 844545015@qq.com
  11. ******************************************************************************
  12. * @attention All Rights Reserved
  13. **/
  14. 鈥?/div>
  15. KeyVal EQU 30H ;鎸夐敭鍊?/div>
  16. 鈥?/div>
  17. LcdRs EQU P2.0 ;LCD1602寮曡剼瀹氫箟
  18. LcdRw EQU P2.1
  19. LcdEn EQU P2.2
  20. 鈥?/div>
  21. ORG 0000H ;绋嬪簭鎵ц鐨勮捣濮嬪湴鍧€
  22. LJMP Main ;璺宠浆鍒癿ain鍑芥暟
  23. ORG 0100H ;绋嬪簭璺宠浆鍒?span class="hljs-number">0100H寮€濮嬫墽琛?/div>
  24. Main: ;鏈€绠€鍗曠殑鎸夐敭璧嬪€?8涓寜閿?
  25. MOV KeyVal,#0FFH
  26. LCALL LCD_INIT ;鍒濆鍖朑UI
  27. MOV A,#080H
  28. LCALL LCD_WCMD
  29. While:
  30. LCALL KeyPad
  31. MOV A,KeyVal
  32. CJNE A,#0FFH,NEXT
  33. SJMP While
  34. NEXT:
  35. LCALL LCD_WDAT
  36. MOV KeyVal,#0FFH
  37. SJMP While ;While寰幆
  38. 鈥?/div>
  39. KeyPad:
  40. MOV P1,#0FFH ;榛樿楂樼數骞?
  41. CLR P1.4 ;P14=0,鏌ョ湅绗?span class="hljs-number">1鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
  42. MOV A,P1 ;A=P1
  43. ANL A,#0FH ;A&0FH涓?/div>
  44. XRL A,#0FH ;A^0FH寮傛垨,鍒ゆ柇浣?span class="hljs-number">4浣嶆槸鍚︽湁鎸夐敭
  45. JZ Col1 ;绗?span class="hljs-number">1鍒楋紝鍚﹀垯璺崇2鍒?/div>
  46. LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
  47. MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
  48. ANL A,#0FH ;A&0FH涓?/div>
  49. XRL A,#0FH ;A^0FH寮傛垨
  50. JZ Col1
  51. MOV A,P1
  52. ANL A,#0FH
  53. CJNE A,#0EH,Row1
  54. JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  55. MOV KeyVal,#'1'
  56. Row1:
  57. CJNE A,#0DH,Row2
  58. JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  59. MOV KeyVal,#'4'
  60. LJMP Over
  61. Row2:
  62. CJNE A,#0BH,Row3
  63. JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  64. MOV KeyVal,#'7'
  65. LJMP Over
  66. Row3:
  67. CJNE A,#07H,Col1
  68. JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  69. MOV KeyVal,#'0'
  70. 鈥?/div>
  71. Col1:
  72. MOV P1,#0FFH ;榛樿楂樼數骞?
  73. CLR P1.5 ;P15=0,鏌ョ湅绗?span class="hljs-number">2鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
  74. MOV A,P1 ;A=P1
  75. JZ Col2 ;绗?span class="hljs-number">2鍒楋紝鍚﹀垯璺崇3鍒?/div>
  76. LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
  77. MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
  78. ANL A,#0FH ;A&0FH涓?/div>
  79. XRL A,#0FH ;A^0FH寮傛垨
  80. JZ Col2
  81. MOV A,P1
  82. ANL A,#0FH
  83. CJNE A,#0EH,Row4
  84. JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  85. MOV KeyVal,#'2'
  86. 鈥?/div>
  87. Row4:
  88. CJNE A,#0DH,Row5
  89. JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  90. MOV KeyVal,#'5'
  91. Row5:
  92. CJNE A,#0BH,Row6
  93. JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  94. MOV KeyVal,#'8'
  95. 鈥?/div>
  96. Row6:
  97. CJNE A,#07H,Col2
  98. JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  99. MOV KeyVal,#'C'
  100. Col2:
  101. MOV P1,#0FFH ;榛樿楂樼數骞?
  102. CLR P1.6 ;P16=0,鏌ョ湅绗?span class="hljs-number">3鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
  103. MOV A,P1 ;A=P1
  104. ANL A,#0FH ;A&0FH涓?/div>
  105. XRL A,#0FH ;A^0FH寮傛垨
  106. JZ Col3 ;绗?span class="hljs-number">3鍒楋紝鍚﹀垯璺崇4鍒?/div>
  107. LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
  108. MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
  109. ANL A,#0FH ;A&0FH涓?/div>
  110. XRL A,#0FH ;A^0FH寮傛垨
  111. JZ Col3
  112. MOV A,P1
  113. ANL A,#0FH
  114. CJNE A,#0EH,Row7
  115. JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  116. MOV KeyVal,#'3'
  117. LJMP Over
  118. Row7:
  119. CJNE A,#0DH,Row8
  120. JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  121. MOV KeyVal,#'6'
  122. LJMP Over
  123. Row8:
  124. CJNE A,#0BH,Row9
  125. JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  126. MOV KeyVal,#'9'
  127. LJMP Over
  128. Row9:
  129. CJNE A,#07H,Col3
  130. JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  131. MOV KeyVal,#'='
  132. LJMP Over
  133. 鈥?/div>
  134. Col3:
  135. MOV P1,#0FFH ;榛樿楂樼數骞?
  136. CLR P1.7 ;P16=0,鏌ョ湅绗?span class="hljs-number">3鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
  137. MOV A,P1 ;A=P1
  138. ANL A,#0FH ;A&0FH涓?/div>
  139. XRL A,#0FH ;A^0FH寮傛垨
  140. JZ Over ;缁撴潫
  141. LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
  142. MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
  143. ANL A,#0FH ;A&0FH涓?/div>
  144. XRL A,#0FH ;A^0FH寮傛垨
  145. JZ Over
  146. MOV A,P1
  147. ANL A,#0FH
  148. CJNE A,#0EH,Row10
  149. JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  150. MOV KeyVal,#'+'
  151. 鈥?/div>
  152. Row10:
  153. CJNE A,#0DH,Row11
  154. JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  155. MOV KeyVal,#'-'
  156. 鈥?/div>
  157. Row11:
  158. CJNE A,#0BH,Row12
  159. JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  160. MOV KeyVal,#'*'
  161. Row12:
  162. CJNE A,#07H,Over
  163. JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
  164. MOV KeyVal,#'/'
  165. Over:
  166. RET
  167. 鈥?/div>
  168. 鈥?/div>
  169. LCD_INIT: ;鍒濆鍖朙CD1602
  170. LCALL Delay ;璁剧疆8绾匡紝5*7绛?/div>
  171. MOV A,#38H
  172. LCALL LCD_WCMD
  173. LCALL Delay
  174. MOV A,#06H
  175. LCALL LCD_WCMD
  176. LCALL Delay
  177. MOV A,#0CH
  178. LCALL LCD_WCMD
  179. LCALL Delay
  180. MOV A,#01H
  181. LCALL LCD_WCMD
  182. LCALL Delay
  183. MOV A,#80H ;鏄剧ず鍒濆鍖栨暟缁?span class="hljs-keyword">TABLE_INIT锛屾渶涓嬮潰鍙殢鎰忔洿鏀?
  184. LCALL LCD_WCMD
  185. MOV R0,#00H
  186. MOV DPTR,#TABLE_INIT
  187. init0: ;鏄剧ず " LCD Initial "
  188. MOV A,R0
  189. MOVC A,@A+DPTR
  190. LCALL LCD_WDAT
  191. NOP
  192. INC R0
  193. CJNE R0,#16,init0
  194. MOV A,#0C0H ;鏄剧ず鍒濆鍖栨暟缁?span class="hljs-keyword">TABLE_KeyPad
  195. LCALL LCD_WCMD
  196. MOV R0,#00H
  197. MOV DPTR,#TABLE_KeyPad
  198. init1: ;鏄剧ず " KeyPad "
  199. MOV A,R0
  200. MOVC A,@A+DPTR
  201. LCALL LCD_WDAT
  202. NOP
  203. INC R0
  204. CJNE R0,#16,init1
  205. 鈥?/div>
  206. LCALL Delay1s
  207. LCALL Delay1s
  208. MOV A,#01H ;娓呭睆
  209. LCALL LCD_WCMD
  210. RET
  211. 鈥?/div>
  212. LCD_WCMD: ;LCD1602鍐欐寚浠わ紝鍏蜂綋鍙LCD涓В閲?/div>
  213. LCALL LCD_Wait
  214. CLR LcdEn
  215. CLR LcdRs
  216. CLR LcdRw
  217. 鈥?/div>
  218. NOP
  219. SETB LcdEn
  220. NOP
  221. MOV P0,A
  222. NOP
  223. CLR LcdEn
  224. NOP
  225. 鈥?/div>
  226. RET
  227. 鈥?/div>
  228. LCD_WDAT: ;LCD1602鍐欐暟鎹?/div>
  229. LCALL LCD_Wait
  230. CLR LcdEn
  231. SETB LcdRs
  232. CLR LcdRw
  233. NOP
  234. SETB LcdEn
  235. NOP
  236. MOV P0,A
  237. NOP
  238. CLR LcdEn
  239. RET
  240. 鈥?/div>
  241. Delay: ;t=t1*20=10ms锛屼慨鏀筊6鐨勫€煎嵆鍙洿鏀规椂闂?涓嶇簿鍑?
  242. MOV R6, #20 ;20
  243. D1:
  244. MOV R7, #0FAH ;t1=250*2=500
  245. D2:
  246. DJNZ R7, D2 ;R7=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
  247. DJNZ R6, D1 ;R6=020鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
  248. RET
  249. 鈥?/div>
  250. Delay1s: ;t=t1*10=5ms锛屼慨鏀筊6鐨勫€煎嵆鍙洿鏀规椂闂?涓嶇簿鍑?
  251. MOV R5, #08H ;鍗曞懆鏈燂紝8娆?/div>
  252. D3: ;t1=t2*250=500*250=125000
  253. MOV R6, #0FAH
  254. D4:
  255. MOV R7, #0FAH ;t2=250*2=500
  256. D5:
  257. DJNZ R7, D5 ;R7=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
  258. DJNZ R6, D4 ;R6=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
  259. DJNZ R5, D3 ;R5=100鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
  260. RET
  261. 鈥?/div>
  262. TABLE_INIT:
  263. DB " LCD Initial "
  264. TABLE_KeyPad:
  265. DB " KeyPad "
  266. 鈥?/div>
  267. END

濡傞渶涓嬭浇Proteus浠跨湡鏂囦欢鍜孠eil宸ョ▼锛岃鍏虫敞鍏紬鍙凤細

Proteus浠跨湡搴楀瓙

锛堣嫢闇€Proteus鍜宬eil瀹夎鍖咃紝鍚庡彴鍥炲锛?strong>瀹夎鍖?/strong>锛涜嫢闇€Proteus鏁欏瑙嗛锛屽悗鍙板洖澶嶏細Proteus瑙嗛锛涜嫢闇€鍏跺畠璁捐锛屽悗鍙板洖澶嶏細51姹囩紪璁捐锛?/p>

标签: proteus keypad使用方法
返回列表

上一篇: proteus 8086仿真时中断无反应

下一篇: proteus四位数字显示器

相关文章

proteus keypad使用方法

       大家好!今天让小编来大家介绍下关于proteus keypad使用方法的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。 文章目录列表: 1、proteus乘法器在哪 2、proteusKEYPAD-PHONE3*4电话键盘原理 3、proteus keypad-smallcalc怎么连接 4、proteus中 keypad_smallcalc怎么接线 一、proteus乘法器在哪 只要在Proteus中输入:keypad就出来了,里有三种计算器Proteus软件是英国LabCenterElectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是比较好的仿真单片机及外围器件的工具。 二、proteusKEYPAD-PHONE3*4电话键盘原理 keypad-phone的原理就是一个矩阵键盘,横列和数列,ABCD可以接高4位,1234可以接低4位。keypad-phone的应用可以作为监控来监控画面。监控系统中键盘都是独立的,是通过线缆...

proteus keypad使用方法

教你如何使用Proteus中的Keypad键盘模块 Proteus是一款功能强大的电路仿真软件,在其中加入Keypad键盘模块可以方便我们进行电路设计。但是如何使用这个模块呢?下面我们就来详细了解一下。 Step 1:找到Keypad键盘模块 首先,我们需要在Proteus中找到Keypad键盘模块,并将其拖入工作区域。通常情况下,Keypad模块可以在库管理器中找到,关于库管理器如何打开可以在网上搜索相关教程学习。 Step 2:设置Keypad键盘模块的参数 接下来,我们需要对Keypad模块的一些参数进行设置,包括行数、列数以及按键的对应字符等。在添置Keypad模块后,双击该模块会出现“Keypad Editor”窗口,然后你可以根据需要进行设置。设置完成后,用鼠标拖动Keypad中的矩阵元件调整位置即可。 Step 3:连接Keypad键盘模块与控制器 最后一步就是将Keypad键盘模块与控制器连接起来。对于Arduino等常见的运控板,通常只需要连接模块的R1、R2、R3、R4引脚到运控板的数字口,C1、C2、C3引脚到运控板的模拟口即可,并根据实际需要进行代...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

4617作文网餐饮公司起什么名字好阮起什么名字美食店起名字大全集属马生起名解梦 滑滑梯戴姓起名大全叶罗丽精灵梦破解版游戏下载口袋宝可梦go破解版起个踢毽子群名嘴巴周围容易起皮早餐店免费起名大全免费在线起名名字测试周公解梦偷钱涂姓怎么起名女孩姓金起什么名字男孩子起名带新字适合卖女装的店铺起名健康管理类公司起名字夏氏起名大全起个群名霸气十足什么臻起名起名舒什么好听起名带金带水的女孩名字周易名字打分测试免费13笔画的字适合起名字机电设备有限公司起名大全梦见找不到回家的路 周公解梦公司免费起名 机械起名带妍字的周易取名测名字测试打分结果淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测

4617作文网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化