|
|
100黑幣
本帖最后由 冷場少年某 于 2020-4-12 11:34 編輯
各位大佬好,我目前做的東西是使用IAP15W4K58S4單片機P3.0~P3.3口控制四組9013三極驅動的MOS開關APM4953,在程序中需要把P3口設置成推挽輸出,M1M0為01配置,但不知為什么在實際使用中,接入3.0,3.1開關后,再接入3.2-3.3這組,單片機就死機了,但兩組分別接入又沒問題。。換成別的I/O口接入又不會死機。。。求問這是啥原因呀
初始化設置
P3M1 = 0xF0; P3M0 = 0x0F;
//P3.2~P3.3 M1M0為01配置,控制9013,驅動MOS開關4953
//P3.4~P3.7 M1M0為10配置,四個檢測配置為高阻輸入
sbit KZ1 = P3^0;
sbit KZ2 = P3^1;
sbit KZ3 = P3^2;
sbit KZ4 = P3^3;
控制函數
void control(void)
{
if(CHK1==1)
{
KZ1=0; //開關1關
KZ2=1; //開關2開
}
else if(CHK2==1)
{
KZ1=1; //SW1 開
KZ2=0; //SW2關
}
else
{
KZ3 = 1; //SW3開
}
}
下面那個Proteus圖紙只是模擬雙P溝道的APM4953,而且我整的Proteus版本里,沒有我使用STC15單片機
|
|