當前位置:編程學習大全網 - 編程軟體 - 51和用C語言寫的pic在定義上有什麽區別?

51和用C語言寫的pic在定義上有什麽區別?

首先,PIC和51單片機在寄存器上有很大區別。比如51單片機的IO沒有方向性,讀IO是輸入數據,寫IO是輸出數據。PIC微控制器的IO輸入數據和輸出數據需要由方向寄存器確定。例如,如果所有端口A都要輸出高電平,那麽需要先設置端口A的方向寄存器TRISA=0x00,然後將端口A的數據寄存器PORTA=0xFF賦值..

51單片機沒有方向性,如果需要輸出到P1口,就直接輸出到P1=0xFF。

這是因為硬件的不同,所以在軟件上有很大的區別。

此外,幾乎所有PIC寄存器和存儲器都是位可尋址的。比如8位高端PIC和16位PIC可以直接給bit賦值:C1ctrlbits。ReOp = 7,即將二進制數111賦給該寄存器的前三位,其他位不動。

從語法上講,PICC(PIC的C語言編譯器,不是中國PICC)是不允許重入函數的。51單片機有中斷向量表,所以可以有多個中斷功能。因為8位中檔PIC沒有中斷向量表,所以需要在中斷函數中確定中斷類型(只有壹個中斷函數)。16位PIC單片機有中斷向量表,但是設置中斷類型比較麻煩。

  • 上一篇:次題用c需要編程,怎麽做?需要詳細代碼,
  • 下一篇:C++用數組編程
  • copyright 2024編程學習大全網