C語言在單晶片設計複雜度不高,變數型態宣告沒有浮點數,常用以下兩種型態。
char ===> 範圍 0 - 255
int ===> 範圍 0 - 65535
算術運算子: + 、 - 、 * 、 / 、 %(module)
關係運算子:>、<、>=(大於等於)、<=(小於等於)、==(等於)、!=(不等於)
邏輯運算子:&& (AND Gate)、(OR Gate)、!(NOT Gate)
補數運算子:~ , 1的補數為0,其他反之。
※ ;(分號)在C語言中它表示敘述句結束。
迴圈語法:
for 迴圈
語法:
for(char x = initial number ; x <= condition number ; x increment or decrement)
ex .
for(x = 0 ; x <= 9 ; x++)
{
x += 1;(0+1+...+9)
}
ex . for(;;),無窮迴圈
while 迴圈
語法:
char x = initial number ;
while(condition number) <=====這裡不加分號
{
statement;
x increment or decrement;
}
ex.
int x = 0;
while(x < 10)
{
x += 1;(0+1+2....+9)
x++;
}
ex. while(1),無窮迴圈
do while 迴圈
語法:
char x = initial number ;
do
{
statement;
x increment or decrement;
}while(condition number); <=====這裡要加分號
ex.
int x = 0;
do
{
x += 1;(0+1+2....+9)
x++;
}while(x < 10);
Showing posts with label 基礎篇. Show all posts
Showing posts with label 基礎篇. Show all posts
Thursday, September 18, 2008
Sunday, September 14, 2008
8051入門
一、AT89S51特色
1. AT89S51 為 MCS-51 相容產品。
2. 4K Byte of In - System Programmable (ISP) Flash Memory。
3. Endurance:1000 Write / Erase Cycles。
4. 工作電壓範圍為 4.0 - 5.5 伏特。
5. 可使用振盪器 0 - 33 MHz 。
6. 128 * 8 bit Internel RAM。
7. 32條可程式輸出/入線。
8. 兩個16位元計時/計數器。
9. 六個中斷來源。
10.全雙工通用非同步接收及傳送序列通道。
二、AT89S51接腳及定義:
該圖片摘錄於ATMEL AT89S51 Datasheet。

VCC:接 5V 正電壓。
GND:接地腳。
Port 0:
1. 可作為一個 8 位元輸出 / 入腳。
2. 外部擴充接腳(例如8255晶片)時可做資料匯流排(D0 - D7)。
3. 外部擴充記憶體(例如6116晶片)時可做位址匯流排(A0 - A7)。
Port 1:只作為一個 8 位元輸出 / 入腳。
Port 2:
1. 可作為一個 8 位元輸出 / 入腳。
2. 外部擴充記憶體做位址匯流排(A8 - A15)。
Port 3:
1. 可作為一個 8 位元輸出 / 入腳。
2. 特殊功能:
● RXD (串列輸入埠 [Serial input poirt])
●TXD (串列輸出埠 [serial output point])
●INT0 (外部中斷0 [External interrupt 0])
●INT1 (外部中斷1 [External interrupt 1])
●T0 (計時/計數中斷[內部為計時;外部為計數])
●T1 (計時/計數中斷[內部為計時;外部為計數])
●WR (外部資料記憶體寫入致能信號)
●RD (外部資料記憶體讀取致能信號)
RST l:高準位時(保持2個機械週期),可重置晶片。
ALE / PROG:位址拴鎖致能(Address Latch Enable)。
PSEN:程式儲存致能(Program Store Enable)。
EA / VPP:
●高電位:
1. CPU讀取內部程式記憶體(ROM)。8051、8052
2. 有擴充外部記憶體時:當內部記憶體不敷使用時0FFFH(8051)、1FFFH(8052),自動讀取外
部記憶體。
●低電位:CPU僅讀取外部記憶體(ROM)。
●8751燒錄:利用此腳輸入21V的燒入電壓。
XTAL 1:接石英振盪器。
XTAL 2:接石英振盪器。
三、AT89S51記憶體:
8051的記憶體包括:
1、8051 有 128 Bytes RAM,8052 有 256 Bytes RAM。
2、擴充外部的 RAM,最大為 64K。
3.記憶體位址 00 ~ 7FH 較低位址共128 byte。
4.記憶體位址 80H ~ FFH 較低位址共128 byte。
5.特殊功能暫存器(Special Function Registor)。
1. AT89S51 為 MCS-51 相容產品。
2. 4K Byte of In - System Programmable (ISP) Flash Memory。
3. Endurance:1000 Write / Erase Cycles。
4. 工作電壓範圍為 4.0 - 5.5 伏特。
5. 可使用振盪器 0 - 33 MHz 。
6. 128 * 8 bit Internel RAM。
7. 32條可程式輸出/入線。
8. 兩個16位元計時/計數器。
9. 六個中斷來源。
10.全雙工通用非同步接收及傳送序列通道。
二、AT89S51接腳及定義:
該圖片摘錄於ATMEL AT89S51 Datasheet。

VCC:接 5V 正電壓。
GND:接地腳。
Port 0:
1. 可作為一個 8 位元輸出 / 入腳。
2. 外部擴充接腳(例如8255晶片)時可做資料匯流排(D0 - D7)。
3. 外部擴充記憶體(例如6116晶片)時可做位址匯流排(A0 - A7)。
Port 1:只作為一個 8 位元輸出 / 入腳。
Port 2:
1. 可作為一個 8 位元輸出 / 入腳。
2. 外部擴充記憶體做位址匯流排(A8 - A15)。
Port 3:
1. 可作為一個 8 位元輸出 / 入腳。
2. 特殊功能:
● RXD (串列輸入埠 [Serial input poirt])
●TXD (串列輸出埠 [serial output point])
●INT0 (外部中斷0 [External interrupt 0])
●INT1 (外部中斷1 [External interrupt 1])
●T0 (計時/計數中斷[內部為計時;外部為計數])
●T1 (計時/計數中斷[內部為計時;外部為計數])
●WR (外部資料記憶體寫入致能信號)
●RD (外部資料記憶體讀取致能信號)
RST l:高準位時(保持2個機械週期),可重置晶片。
ALE / PROG:位址拴鎖致能(Address Latch Enable)。
PSEN:程式儲存致能(Program Store Enable)。
EA / VPP:
●高電位:
1. CPU讀取內部程式記憶體(ROM)。8051、8052
2. 有擴充外部記憶體時:當內部記憶體不敷使用時0FFFH(8051)、1FFFH(8052),自動讀取外
部記憶體。
●低電位:CPU僅讀取外部記憶體(ROM)。
●8751燒錄:利用此腳輸入21V的燒入電壓。
XTAL 1:接石英振盪器。
XTAL 2:接石英振盪器。
三、AT89S51記憶體:
8051的記憶體包括:
1、8051 有 128 Bytes RAM,8052 有 256 Bytes RAM。
2、擴充外部的 RAM,最大為 64K。
3.記憶體位址 00 ~ 7FH 較低位址共128 byte。
4.記憶體位址 80H ~ FFH 較低位址共128 byte。
5.特殊功能暫存器(Special Function Registor)。
Subscribe to:
Posts (Atom)