51单片机中存放定时器T1初值的定时器是什么? 单片机定时器T0和T1有什么区别呀?求助~~~
\u5355\u7247\u673aT0 T1 T2\u548c\u4ec0\u4e48\u8ba1\u65f6\u5668\u5b9a\u65f6\u5668 \u5de5\u4f5c\u65b9\u5f0f\u662f\u4ec0\u4e48\u5173\u7cfb51\u7cfb\u5217\u90fd\u6709T0 T1 \u4e5f\u5c31\u662f\u8ba1\u6570/\u5b9a\u65f6\u56681 \u8ba1\u6570/\u5b9a\u65f6\u56682 \u7531TMOD\u8bbe\u7f6e\u6ea2\u51fa\u6a21\u5f0f TCON\u63a7\u5236\u505a\u8ba1\u6570\u5668\u8fd8\u662f\u5b9a\u65f6\u5668\u53ca\u5176\u5b83\u8bbe\u7f6e\uff0c\u505a\u8ba1\u6570\u5668\u65f6\u63a5\u53d7\u7684\u662f\u5916\u90e8\u8109\u51b2\uff0c\u5b9a\u65f6\u5668\u65f6\u63a5\u53d7\u7684\u662f\u65f6\u949f\u76f8\u5173\u7684\u8109\u51b2\uff0c\u6ea2\u51fa\u65f6\u53ef\u4ee5\u8bbe\u7f6e\u89e6\u53d1\u4e2d\u65ad\uff0c\u5373\u6240\u8c13\u7684\u8ba1\u6570/\u5b9a\u65f6\u5668\u4e2d\u65ad0\uff0c\u8ba1\u6570/\u5b9a\u65f6\u5668\u4e2d\u65ad1
T2\u572851\u7cfb\u5217\u4e2d\u65e0, 52\u7cfb\u5217\u4e2d\u624d\u6709\uff0c\u4e5f\u5c31\u662f\u5b9a\u65f6\u56682\uff0c\u4e00\u822c\u7684\u5b83\u505a\u6ce2\u7279\u7387\u53d1\u751f\u5668\u4e13\u7528\u4e86\uff0c\u6ca1\u6709T2\u65f6\u6ce2\u7279\u53d1\u751f\u5668\u5c31\u5f97\u7528T1\u6765\u505a\u4e86\uff0c\u9ed8\u8ba4\u90fd\u662fT1\u505a\u6ce2\u7279\u7387\u53d1\u751f\u5668\uff0c\u542f\u7528\u4e13\u6ce2\u7279\u7387\u53d1\u751f\u5668\u65f6\u9700\u8981\u4e13\u95e8\u6307\u5b9a\uff0c\u4e4b\u540e\u5c31\u53ef\u4ee5\u89e3\u653eT1\u4e86
\u5de5\u4f5c\u65b9\u5f0f\u4ec0\u4e48\u7684\uff0c\u5c31\u662f\u505a\u8ba1\u6570\u5668\u8fd8\u662f\u505a\u5b9a\u65f6\u5668\u7531TCON\u51b3\u5b9a\uff0cTMOD\u6307\u5b9a\u6a21\u5f0f1\u662f16\u4f4d\u8ba1\u6570\u6ea2\u51fa\uff0c\u6a21\u5f0f0\u8fd8\u662f13\u4f4d\u8ba1\u6570\u6ea2\u51fa\uff0c\u6a21\u5f0f2\u548c3\u662f8\u4f4d\u8ba1\u6570\u6ea2\u51fa \u6a21\u5f0f2\u81ea\u88c5\u8f7d\u6a21\u5f0f3\u4e0d\u81ea\u88c5\u8f7d\uff0c
TCON\u7684\u516b\u4f4d: TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0...\u6709\u5173\u77e5\u8bc6\u8bf7\u81ea\u5df1\u770b\u4e66
T0\u548cT1\u7684\u5de5\u4f5c\u65b9\u5f0f0\uff0c1\uff0c2\u76f8\u540c\uff0c\u65b9\u5f0f3\u4e0d\u540c\u3002T0\u7528\u7684\u662f13\u4f4d\u8ba1\u6570\u5668\uff08\u9ad8\u4e09\u4f4d\u4e0d\u7528\uff09\uff0cT1\u7528\u7684\u662f16\u4f4d\u8ba1\u6570\u5668\u3002\u6240\u4ee5\u4e24\u8005\u7684\u6700\u5927\u5373\u4f7f\u65f6\u95f4\u4e0d\u540c\u3002\u5728\u5904\u7406\u95ee\u9898\u65f6\uff0c\u53ef\u5148\u8bbe\u5b9a\u4e00\u4e2a\u65f6\u95f4\u57fa\u51c6\uff0c\u518d\u4e58\u4ee5\u500d\u6570\u8fbe\u5230\u8981\u6c42\u3002
中断一般是在p3.2口有下降沿就进入?--是。
那定时器中断是怎么进入的?
--定时器,无论是定时或计数,加一,出现溢出时。
t1的工作方式是00的时候th0和tl0的值怎么改定时时间都是8毫秒!
--办不到。
--只能通过设置
th1
和
tl1
的初值,才能改变
t1
的定时时间。
用方式1时,16位的初值要分解成高8位、低8位,分别存放到TH0、TL0。对256求模,也就是除以256得到的整数商,这就是高八位。对256求余,也就是除以256,得到的余数,这就是低八位。楼主可以把一个二进制数,人工除以2、除以4、除以16,看看商、余数,都是多少位,就知道8位数和256的关系了。
绛旓細鏃堕棿甯告暟X=256-fosc/(384*9600)=251=0xFB銆
绛旓細 婧㈠嚭閫熺巼锛濓紙璁℃暟閫熺巼锛/(256锛峊H1鍒濆) 婧㈠嚭閫熺巼锛漟osc/[12*(256-TH1鍒濆)] 涓婂紡涓殑鈥滆鏁伴熺巼鈥濅笌鎵浣跨敤鐨勬櫠浣撴尟鑽″櫒棰戠巼鏈夊叧锛屽湪51 鑺墖涓畾鏃跺櫒鍚姩鍚庝細鍦ㄦ瘡涓涓満鍣ㄥ懆鏈熶娇瀹氭椂瀵勫瓨鍣═H 鐨勫煎鍔犱竴锛屼竴涓満鍣ㄥ懆鏈...
绛旓細TH0 = 0xf6;TL0 = 0xff;涓婁袱琛屾槸瀹氭椂鍣/璁℃暟鍣═0鐨勫垵鍊硷紝鍥犱负T0鏄16浣嶇殑锛屾墍浠ョ敤TH0琛ㄧず楂樺叓浣嶏紝TL0琛ㄧず浣庡叓浣 TH1 = 0xfd;TL1 = 0xfd;T1鍒濆 TMOD = 0x21;瀹氭椂鍣/璁℃暟鍣ㄦā寮忔帶鍒跺瘎瀛樺櫒 濡傚浘 GATE=1鏃讹紝鐢卞閮ㄤ腑鏂紩鑴欼NT0銆両NT1鏉ュ惎鍔ㄥ畾鏃跺櫒T0銆乀1 GATE=0鏃讹紝浠呯敱TR0,TR1缃綅...
绛旓細杩欎釜鏈変粈涔堢湅涓嶆噦寰楀憿 绗竴绉 鏄惂鍗佽繘鍒跺寲鎴愬崄鍏満鍒剁殑鏂规硶 绗簩绉嶅憿 灏辨槸鍗曠函鐨勫崄杩涘埗 杩欐牱璺熶綘璇村惂 鍥犱负th0鍙湁涓涓瓧鑺 閭e氨鍙兘鏀句笅8浣2杩涘埗 浜庢槸绗竴绉嶈〃绀哄氨鏄妸涓涓ぇ浜庝竴涓瓧鑺傚皬浜庝袱涓瓧鑺傜殑鏁版嵁杞寲鎴愪袱涓瓧鑺傞珮鍏綅鍜岀鍏綅鐨勫垎绂诲舰寮 绗簩绉嶅氨绠鍗曚簡 0x9c灏辨槸65536-100鐨勫崄鍏...
绛旓細棣栧厛瑕佺煡閬撲竴涓鏃惰剦鍐茬殑鍛ㄦ湡锛岃鏃惰剦鍐查鐜囨槸鏅舵尟棰戠巼鐨1/12锛屾櫠鎸12M鏃讹紝璁℃椂鑴夊啿棰戠巼鏄1MHz锛屽懆鏈熸槸1us锛屽洜姝ゅ畾鏃1mS灏辨槸1000涓剦鍐诧紝鐢变簬51瀹氭椂鍣鏄姞娉曡鏁帮紝璁℃暟鍒版渶澶у65536婧㈠嚭锛屽畾鏃剁粨鏉燂紝浜х敓涓柇锛屽洜姝鍒濆搴旇鍐欎负65536-1000锛岃鏁板櫒鍒嗛珮8浣嶅拰浣8浣嶏紝楂8浣嶇殑1浠h〃256锛屼綆8浣嶆槸涓嶈冻256...
绛旓細鍏堝湪涓荤▼搴忎腑缁橳H1瑁呭叆鍒濆銆傛鍚庯紝瀹氭椂(鎴栬鏁)锛屽埌浜 TH1 TL0=0 鏃讹紝灏辫繘鍏ヤ腑鏂嚱鏁般傚鏋滀笉閲嶆柊瑁呭叆鍒濆硷紝瀹冨皢浠 0 寮濮嬬户缁畾鏃(鎴栬鏁)銆備粠鍒濆硷紝瀹氭椂(鎴栬鏁)锛屽埌 0锛岃繖鎵嶆槸浜轰滑鏈熸湜鐨勩備粠 0 锛屽畾鏃(鎴栬鏁)锛屽埌 0锛岃繖骞朵笉鏄墍鏈熸湜鐨勩傚洜姝わ紝涓柇鍚庯紝蹇呴』閲嶆柊瑁呭叆鍒濆笺
绛旓細浠庢湰璐ㄤ笂鐪嬶紝浣犳牴鏈笉浜嗚В瀹氭椂鍣ㄧ殑宸ヤ綔锛屼綘灏卞彧鐪嬩唬鐮侊紝鍙堝矀鑳界湅鎳傘51鍗曠墖鏈虹殑瀹氭椂鍣0鏄16浣嶏紝褰撶劧锛岃繖涓ā寮忔槸鍙互鏀瑰彉鐨勩傛垜灏卞亣璁惧伐浣滃湪16浣嶆ā寮忎笅锛屽洜涓哄ぇ閮ㄥ垎鏃跺欙紝涔熷伐浣滃湪杩欎釜妯″紡涓嬨16浣嶇殑瀹氭椂鍣紝浣嗗彧鑳界敤鍗曠墖鏈烘槸8浣嶇殑锛屾墍浠ワ紝灏辨媶鍒嗘垚浜嗕袱涓瓧鑺傦紝楂樺叓浣嶅拰浣庡叓浣嶃俆H0琛ㄧず瀹氭椂鍣0鐨...
绛旓細//51C:void T1INTinit(){ TOMD=0X10;TH1 = 0xB1;TL1 = 0xE0;EA=1;ET1=1;TR1=1;} ;51姹囩紪锛歍1INTINIT:MOV TMOD,#10H MOV TH1,#0B1H MOV TL1,#0E0H SETB EA SETB ET1 SETB TR1 RET
绛旓細51鍗曠墖鏈哄畾鏃跺櫒鍒濆璁$畻锛歷oid main锛坴oid锛墈 s1=1;TMOD=0x01; //浣跨敤瀹氭椂鍣═0鐨勬ā寮1 TH0=锛65536-46083锛/256; //瀹氭椂鍣═0鐨勯珮8浣嶈缃垵鍊 TL0=锛65536-46083锛%256; //瀹氭椂鍣═0鐨勪綆8浣嶈缃垵鍊 鍑芥暟鍔熻兘锛氬畾鏃跺櫒T0鐨勪腑鏂湇鍔″嚱鏁 void Time0锛坴oid 锛 interrupt 1 using 0 //瀹氭椂鍣═0...
绛旓細鑲畾涓嶈,浣犺嚜宸辩畻涓涓,鐢变簬璁℃暟鍣ㄦ槸鍚戜笂璁℃暟鐨,瀹氭椂5ms(鍋囪1涓剦鍐1US,闇5000涓剦鍐)鍒濆灏辨槸65536-5000,杩欐牱鍐嶆潵5000涓剦鍐,璁℃暟鍣ㄥ煎氨鎴愪簡65536,浜х敓婧㈠嚭,鍙戠敓涓柇 鍥犻珮8浣(TH0)鐨勬瘡涓1鐩稿綋浜256,鎵浠ュ畠瑁呭叆鐨勫簲璇ユ槸(65536-5000)/256 浣8浣(TL0)鏄紙65536-5000锛%256,涔熷氨鏄笉瓒256鐨...