標(biāo)題: STC15F101W單片機(jī)只有P3^4和P3^5可用,2和3不能用 [打印本頁]

作者: CZXJL    時(shí)間: 2019-3-13 23:08
標(biāo)題: STC15F101W單片機(jī)只有P3^4和P3^5可用,2和3不能用
接觸C51已經(jīng)一個(gè)多星期了開始用的是STC89C52RC  感覺體積太大做出來的東西空間就讓單片機(jī)占去一半了前幾天入手STC15F101W體積小引腳也勾引  當(dāng)時(shí)在洞洞板上就測(cè)試了兩個(gè)引腳測(cè)試OK就開始做PCB
效果圖1



效果圖2



寫代碼的時(shí)候問題就來了

代碼

#include<reg52.h>
sbit LED1=P3^2;
sbit LED2=P3^3;
sbit LED3=P3^4;
sbit LED4=P3^5;
void delay(unsigned int t);


void main()
{

        while(1)
        {
        LED1=0;
        LED2=0;
        LED3=0;
        LED4=0;
        delay(20);
        LED1=1;
        LED2=1;
        LED3=1;
        LED4=1;
        delay(20);
        
        }

只有P3^4和P3^5可用
2和3不能用
看了一會(huì)說明沒看出什么頭緒 頭都大了
到此求助 希望大家?guī)兔?br />
作者: ssk7793    時(shí)間: 2019-3-14 06:50
可能你自己畫的板有問題
作者: wulin    時(shí)間: 2019-3-14 07:19
你說的問題可能是另有原因,看圖片你的4個(gè)LED都沒有串接限流電阻,這種0.5W的LED單片機(jī)IO口直接帶不動(dòng)的,需要加晶體管放大。
作者: zssssha    時(shí)間: 2019-3-14 08:41
stc-isp軟件里有stc頭文件的代碼把頭文件編到程序里面。
作者: xuyaqi    時(shí)間: 2019-3-14 08:53
說說不能用的現(xiàn)象。
作者: CZXJL    時(shí)間: 2019-3-14 10:00
單片機(jī)買來的時(shí)候里面是有三個(gè)燈流水閃爍的可是代碼寫進(jìn)去就只有兩個(gè)引腳能用
作者: CZXJL    時(shí)間: 2019-3-14 10:08
開始的時(shí)候新的單片機(jī)里面有程序  PCB和焊接都做好之后上電有三個(gè)LED流水的方式亮我寫進(jìn)去這段代碼就只有兩個(gè)亮  如果板子線路有問題最起碼得有三個(gè)能亮的  現(xiàn)在只有兩個(gè)可以亮
作者: CZXJL    時(shí)間: 2019-3-14 10:10
加了stc15f104w.h頭文件也一樣 9 9

做好了可以結(jié)貼了:http://www.torrancerestoration.com/bbs/dpj-153074-1.html

作者: 這一生只為你    時(shí)間: 2019-3-14 10:21
把原理圖貼出來看一下
作者: lmn2005    時(shí)間: 2019-3-14 10:23
wulin 發(fā)表于 2019-3-14 07:19
你說的問題可能是另有原因,看圖片你的4個(gè)LED都沒有串接限流電阻,這種0.5W的LED單片機(jī)IO口直接帶不動(dòng)的, ...

對(duì)!我的看法與你相同。
作者: wc86110    時(shí)間: 2019-3-14 10:28
小馬拉大車芯片遲早得完蛋
作者: angmall    時(shí)間: 2019-3-14 20:00
  1. #include<reg52.h>

  2. sfr P3M1 = 0xb1; //PxM1.n,PxM0.n =00--->雙向口模,      01---> 推挽輸出模式
  3. sfr P3M0 = 0xb2; //              =10--->高阻輸入模式,  11---> 開漏模式
  4. sbit LED1=P3^2;
  5. sbit LED2=P3^3;
  6. sbit LED3=P3^4;
  7. sbit LED4=P3^5;

  8. void delay(unsigned int t);


  9. void main()
  10. {
  11.         P3M1 = 0x00; //設(shè)置P3.2~P3.7為推挽輸出模式
  12.         P3M0 = 0xFC;
  13.        
  14.         while(1)
  15.         {
  16.                 LED1=0;
  17.                 LED2=0;
  18.                 LED3=0;
  19.                 LED4=0;
  20.                 delay(20);
  21.                 LED1=1;
  22.                 LED2=1;
  23.                 LED3=1;
  24.                 LED4=1;
  25.                 delay(20);
  26.                
  27.         }
  28.        
  29. }

  30. void delay(unsigned int t)
  31. {
  32.         int i, j;

  33.         do
  34.         {
  35.                 for (i=0; i<1000; i++)
  36.                    for (j=0; j<500; j++);
  37.         } while (--t);
  38. }
復(fù)制代碼





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1