[問題] HCTL 2032
小弟現在大三做專題的關係接觸到這顆ic
這一兩天在測這顆ic
環境
1.使用LEGO NXT MOTOR
2.使用一組AB, 4x, 讀X的MSB資料
3.使用8051去控(下面是程式碼)
4.直接插麵包板 測是否有計數&計數結果(電路在下面)
5.使用24MHz CLK
測試方式
1.程式先執行reset, 我用手轉動馬達, 再執行外部中斷讀MSB資料
2.手動測式是不執行reset 直接改變OEN 讀取MSB
可是我的結果是旋轉馬達時D0~D7會全亮跟全滅(使用麵包板)
照理說意給AB訊號後會自動計數, 可是我的CNTDECx 完全不會變化...
現在有幾個使用上的問題
1.CHIx CHIy 是否要接?
2.CLK是否一定要33MHz? 我用的是4隻腳的震盪ic(24M)
3.如何測是ic是否工作正常?
4.測試方式是否有誤?
非常感謝回答
麵包板電路
http://ppt.cc/jH2I
測試程式
#include "reg_mpc82g516.h"
sbit EN1=P1^0;
sbit EN2=P1^1;
sbit SEL1=P1^2;
sbit SEL2=P1^3;
sbit OEN=P1^4;
sbit RSX=P1^5;
sbit RSY=P1^6;
sbit XNY=P1^7;
unsigned char sta;
void Delay(unsigned int);
main()
{
EA=1; EX0=1; IT0=1; //中斷啟用
EN1=1; EN2=1;
XNY=0;
SEL1=1; SEL2=1;
OEN=0;
RSX=0; RSY=0; //Reset
Delay(10);
while(1){ }
}
void A() interrupt 0 using 1 //中斷函式
{
if(sta==2)
{
sta=0;
}
if(sta==0)
{
RSX=1; RSY=1; //Count
OEN=0;
sta=sta+1;
}
else
{
RSX=1; RSY=1; //Read MSB
OEN=1;
Delay(10);
OEN=0;
sta=sta+1;
}
}
void Delay(unsigned int a)
{
int b;
while(a--)
{
for(b=100;b>0;b--);
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.141.234
→
01/20 18:15, , 1F
01/20 18:15, 1F