標題:
F330的軟體問題
[打印本頁]
作者:
kkdc0426
時間:
2012-8-8 11:51
標題:
F330的軟體問題
#include <C8051F330.h>
sfr P0MDOUT=0xff;
void main()
{ // 主程式開始
while(1)
{ // WHILE的無限迴圈
P0=0XCC; // 將 0xCC= 11001100B 從P0輸出
}
}以上為程式
可以請問一下,那理有問題...
作者:
kkdc0426
時間:
2012-8-9 09:09
#include <C8051F330.h>
void main() // 主程式開始
{
P0MDOUT=0xff;
while(1) // WHILE的無限迴圈
{
P0=0X00; // 將 0xCC= 11001100B 從P0輸出
}
}
已改為這樣...沒有錯誤了,但,為什麼所有的輸出都為high...
作者:
mike
時間:
2012-8-9 11:22
請在main()內把watchdog timer關閉
// disable watchdog timer
PCA0MD &= ~0x40; // WDTE = 0 (clear watchdog timer enable)
再把port設成push-pull
P0MDOUT=0xff;
試看看.
作者:
kkdc0426
時間:
2012-8-9 11:41
標題:
無奈
#include <C8051F330.h>
void main() // 主程式開始
{
PCA0MD &= ~0x40; // 關看門狗
P0MDOUT=0xff; // 設定P0.0-7為輸出
while(1) // WHILE的無限迴圈
{
P0=0X00; // 將 0xCC= 11001100B 從P0輸出
}
}
改了,輸出一樣還是全為high...
作者:
Stevenyang
時間:
2012-8-9 15:58
你程式中沒有把 Cossbar Enable,檢查看看。
XBR1 = 0x40;
作者:
kkdc0426
時間:
2012-8-9 16:03
說真的,我沒有C語言的底子
想學,覺的好困難,外面只有賣純8051的書
但我最容易取得的ic是你們家的F330
有沒有silocon lab的入門教學的pdf或什麼之類的
不然好像瞎子摸象...
作者:
Stevenyang
時間:
2012-8-9 20:33
有,但都是簡體版,就是對岸的出版社的書籍,你可以上 "博客來" 網站收尋訂購,參考網址如下:
http://search.books.com.tw/exep/ ... aid=head_wel_search
PS:若訂不到只好拖人或自己到對岸買。
[
本帖最後由 Stevenyang 於 2012-8-9 20:34 編輯
]
作者:
kkdc0426
時間:
2012-8-10 14:17
............
[
本帖最後由 kkdc0426 於 2012-8-10 14:18 編輯
]
作者:
kkdc0426
時間:
2012-8-10 14:17
//檔名:CH05 _4_1.C
//目的:從P0輸入資料到8051中,再將讀入的資料由P1輸出並利用LED顯示
#include <C8051F330.h>
void main() // 主程式開始
{
PCA0MD &= ~0x40; // 關看門狗
XBR1 = 0x40; // Cossbar Enable
P0MDIN =0xff; // 設定P0.0-7為輸入
P1MDOUT =0xff; // 設定P1.0-7為輸出
while(1) // WHILE的無限迴圈
ACC=P0; // 將P0的數值輸入,並且放到變數 ACC 中
P1=ACC; // 將變數 ACC 的數值由P1輸出
}
可以再請教一下嗎???...P1的輸出...沒反應
作者:
Stevenyang
時間:
2012-8-13 09:14
首先先糾正你幾個暫存器的認知:
1. 8051系統,每個I/O都是雙向的,使用時不需預設輸入或輸出
2. P0MDIN 是設定該選用I/O是數位或類比Pin
3. P1MDOUT 是設定該選用I/O是Push-Pull或Open-Drain Mode
你的程式問題是語法錯誤,while(1)下方程式應該用 "{ }" 將該些程式括著。
有關F330 內建功能所有 Sample Code 你可參考:
C:\SiLabs\MCU\Examples\C8051F330_5
作者:
kkdc0426
時間:
2012-9-5 18:26
所以說...P1MDMOUT設為1時,輸出高電位,設為0時,輸出為低電位
感謝你的糾正,謝謝
歡迎光臨 茂宣企業 產品討論區 (http://www.morrihan.com/newbb/)
Powered by Discuz! 6.0.0