-
* 高斯列主元素消去法求解矩陣方程AX=B,其中A是N*N的矩陣,B是N*M矩陣
* 輸入: n----方陣A的行數
* a----矩陣A
* m----矩陣B的列數
* b----矩陣B
* 輸出: det----矩陣A的行列式值
* a----A消元后的上三角矩陣
* b----矩陣方程的解X
標簽:
矩陣
AX
高斯
元素
上傳時間:
2015-07-26
上傳用戶:xauthu
-
將魔王的語言抽象為人類的語言:魔王語言由以下兩種規則由人的語言逐步抽象上去的:α-〉β1β2β3…βm ;θδ1δ2…-〉θδnθδn-1…θδ1
設大寫字母表示魔王的語言,小寫字母表示人的語言B-〉tAdA,A-〉sae,eg:B(ehnxgz)B解釋為tsaedsaeezegexenehetsaedsae對應的話是:“天上一只鵝地上一只鵝鵝追鵝趕鵝下鵝蛋鵝恨鵝天上一只鵝地上一只鵝”。(t-天d-地s-上a-一只e-鵝z-追g-趕x-下n-蛋h-恨)
標簽:
語言
抽象
字母
上傳時間:
2013-12-19
上傳用戶:aix008
-
/*--------- 8051內核特殊功能寄存器 -------------*/
sfr ACC = 0xE0; //累加器
sfr B = 0xF0; //B 寄存器
sfr PSW = 0xD0; //程序狀態字寄存器
sbit CY = PSW^7; //進位標志位
sbit AC = PSW^6; //輔助進位標志位
sbit F0 = PSW^5; //用戶標志位0
sbit RS1 = PSW^4; //工作寄存器組選擇控制位
sbit RS0 = PSW^3; //工作寄存器組選擇控制位
sbit OV = PSW^2; //溢出標志位
sbit F1 = PSW^1; //用戶標志位1
sbit P = PSW^0; //奇偶標志位
sfr SP = 0x81; //堆棧指針寄存器
sfr DPL = 0x82; //數據指針0低字節
sfr DPH = 0x83; //數據指針0高字節
/*------------ 系統管理特殊功能寄存器 -------------*/
sfr PCON = 0x87; //電源控制寄存器
sfr AUXR = 0x8E; //輔助寄存器
sfr AUXR1 = 0xA2; //輔助寄存器1
sfr WAKE_CLKO = 0x8F; //時鐘輸出和喚醒控制寄存器
sfr CLK_DIV = 0x97; //時鐘分頻控制寄存器
sfr BUS_SPEED = 0xA1; //總線速度控制寄存器
/*----------- 中斷控制特殊功能寄存器 --------------*/
sfr IE = 0xA8; //中斷允許寄存器
sbit EA = IE^7; //總中斷允許位
sbit ELVD = IE^6; //低電壓檢測中斷控制位
8051
標簽:
80C51
特殊功能寄存器
地址
上傳時間:
2013-10-30
上傳用戶:yxgi5
-
本書針對Atmel公司的AVR系列單片機和ImageCraft公司的ICC AVR開發環境,詳細地介紹了AT90LS8535的C語言程序設計。全書共有13章,其內容既涉及到了單片機的結構原理、指令系統、內容資源和外部功能擴展,又包含了單片機的編程工具——ICC AVR C編程器的數據類型、控制流、函數和指針等。本書的特點是:深入淺出,從最基本的概念開始,循序漸進地講解單片機的應用開發;列舉了大量實例,使讀者能從實際應用中掌握單片機的開發與應用技術。本書適合作為從事單片機開發人員的參考用書。書中先后講解了C語言基礎、AVR單片機基礎,并舉了一些簡單的實例。本書非常適合初學者。
【目錄信息】
第1章 單片機系統概述
1. 1 AVR系列單片機的特點
1. 2 AT90系列單片機簡介
第2章 AT90LS8535單片機的基礎知識
2. 1 AT90LS8535單片機的總體結構
2. 1. 1 AT90LS8535單片機的中央處理器
2. 1. 2 AT90LS8535單片機的存儲器組織
2. 1. 3 AT90LS8535單片機的I/O接口
2. 1. 4 AT90LS8535單片機的內部資源
2. 1. 5 AT90LS8535單片機的時鐘電路
2. 1. 6 AT90LS8535單片機的系統復位
2. 1. 7 AT90LS8535單片機的節電方式
2. 1. 8 AT90LS8535單片機的芯片引腳
2. 2 AT90LS8535單片機的指令系統
2. 2. 1 匯編指令格式
2. 2. 2 尋址方式
2. 2. 3 偽指令
2. 2. 4 指令類型及數據操作方式
2. 3 應用程序設計
2. 3. 1 程序設計方法
2. 3. 2 應用程序舉例
第3章 AT90LS8535單片機的C編程
3. 1 支持高級語言編程的AVR系列單片機
3. 2 AVR的C編譯器
3. 3 ICCAVR介紹
3. 3. 1 安裝ICCAVR
3. 3. 2 設置ICCAVR
3. 4 用ICCAVR編寫應用程序
3. 5 下載程序文件
第4章 數據類型. 運算符和表達式
4. 1 ICCAVR支持的數據類型
4. 2 常量與變量
4. 2. 1 常量
4. 2. 2 變量
4. 3 AT90LS8535的存儲空間
4. 4 算術和賦值運算
4. 4. 1 算術運算符和算術表達式
4. 4. 2 賦值運算符和賦值表達式
4. 5 邏輯運算
4. 6 關系運算
4. 7 位操作
4. 7. 1 位邏輯運算
4. 7. 2 移位運算
4. 8 逗號運算
第5章 控制流
5. 1 C語言的結構化程序設計
5. 1. 1 順序結構
5. 1. 2 選擇結構
5. 1. 3 循環結構
5. 2 選擇語句
5. 2. 1 if語句
5. 2. 2 switch分支
5. 2. 3 選擇語句的嵌套
5. 3 循環語句
5. 3. 1 while語句
5. 3. 2 do…while語句
5. 3. 3 for語句
5. 3. 4 循環語句嵌套
5. 3. 5 break語句和continue語句
第6章 函數
6. 1 函數的定義
6. 1. 1 函數的定義的一般形式
6. 1. 2 函數的參數
6. 1. 3 函數的值
6. 2 函數的調用
6. 2. 1 函數的一般調用
6. 2. 2 函數的遞歸調用
6. 2. 3 函數的嵌套調用
6. 3 變量的類型及其存儲方式
6. 3. 1 局部變量
6. 3. 2 局部變量的存儲方式
6. 3. 3 全局變量
6. 3. 4 全局變量的存儲方式
6. 4 內部函數和外部函數
6. 4. 1 內部函數
6. 4. 2 外部函數
第7章 指針
7. 1 指針和指針變量
7. 2 指針變量的定義和引用
7. 2. 1 指針變量的定義
7. 2. 2 指針變量的引用
7. 2. 3 指針變量作為函數參數
7. 3 數組與指針
7. 3. 1 指向數組元素的指針變量
7. 3. 2 數組元素的引用 通過指針
7. 3. 3 數組名作為函數參數
7. 3. 4 指向多維數組的元素的指針變量
7. 4 字符串與指針
7. 4. 1 字符串的表示形式
7. 4. 2 字符串指針變量與字符數組的區別
7. 5 函數與指針
7. 5. 1 函數指針變量
7. 5. 2 指針型函數
7. 6 指向指針的指針
7. 7 有關指針數據類型和運算小結
7. 7. 1 有關指針的數據類型的小結
7. 7. 2 指針運算的小結
第8章 結構體和共用體
8. 1 結構體的定義和引用
8. 1. 1 結構體類型變量的定義
8. 1. 2 結構體類型變量的引用
8. 2 結構類型的說明
8. 3 結構體變量的初始化和賦值
8. 3. 1 結構體變量的初始化
8. 3. 2 結構體變量的賦值
8. 4 結構體數組
8. 4. 1 結構體數組的定義
8. 4. 2 結構體數組的初始化
8. 5 指向結構體類型變量的指針
8. 5. 1 指向結構體變量的指針
8. 5. 2 指向結構體數組的指針
8. 5. 3 指向結構體變量的指針做函數參數
8. 6 共用體
8. 6. 1 共用體的定義
8. 6. 2 共用體變量的引用
第9章 A190LS8535的內部資源
9. 1 I/O 口
9. 1. 1 端口A
9. 1. 2 端口B
9. 1. 3 端口C
9. 1. 4 端口D
9. 1. 5 I/O口的編程
9. 2 中斷
9. 2. 1 單片機的中斷功能
9. 2. 2 AT90LS8535單片機的中斷系統
9. 2. 3 1CCAVRC編譯器的中斷操作
9. 2. 4 中斷的編程
9. 3 串行數據通信
9. 3. 1 數據通信基礎
9. 3. 2 AT90LS8535的同步串行接口
9. 3. 3 AT90LS8535的異步串行接口
9. 4 定時/計數器
9. 4. 1 定時/計數器的分頻器
9. 4. 2 8位定時/計數器0
9. 4. 3 16位定時/計數器1
9. 4. 4 8位定時/計數器2
9. 5 EEPROM
9. 5. 1 與EEPROM有關的寄存器
9. 5. 2 EEPROM讀/寫操作
9. 5. 3 EEPROM的應用舉例
9. 6 模擬量輸入接口
9. 6. 1 模數轉換器的結構
9. 6. 2 ADC的使用
9. 6. 3 與模數轉換器有關的寄存器
9. 6. 4 ADC的噪聲消除
9. 6. 5 ADC的應用舉例
9. 7 模擬比較器
9. 7. 1 模擬比較器的結構
9. 7. 2 與模擬比較器有關的寄存器
9. 7. 3 模擬比較器的應用舉例
第10章 AT90LS8535的人機接口編程
10. 1 鍵盤接口
10. 1. 1 非矩陣式鍵盤
10. 1. 2 矩陣式鍵盤
10. 2 LED顯示輸出
10. 2. 1 LED的靜態顯示
10. 2. 2 LED的動態掃描顯示
10. 2. 3 動態掃描顯示專用芯片MC14489
10. 3 LCD顯示輸出
10. 3. 1 字符型LCD
10. 3. 2 點陣型LCD
10. 4 ISD2500系列語音芯片的編程
10. 4. 1 ISD2500的片內結構和引腳
10. 4. 2 ISD2500的操作
10. 4. 3 ISD2500和單片機的接口及編程
10. 5 TP-uP微型打印機
10. 5. 1 TP-uP打印機的接口和邏輯時序
10. 5. 2 P-uP打印機的打印命令和字符代碼
10. 5. 3 AT90LS8535與TP-uP系列打印機的接口及編程
10. 6 IC卡
10. 6. 1 IC卡讀寫裝置
10. 6. 2 IC卡軟件
第11章 AT90LS8535的外圍擴展
11. 1 簡單I/O擴展芯片
11. 1. 1 用74LS377擴展數據輸出接口
11. 1. 2 數據輸入接口
11. 2 模擬量輸出
11. 2. 1 D/A轉換器簡介
11. 2. 2 8位數模轉換器DAC0832
11. 2. 3 8位數模轉換器與單片機的接口及編程
11. 2. 4 12位數模轉換器DACl230
11. 2. 5 12位數模轉換器與單片機的接口及編程
11. 3 可編程I/O擴展芯片8255A
11. 3. 1 8255A的引腳和內部結構
11. 3. 2 8255A的工作方式
11. 3. 3 8255A的控制字
11. 3. 4 AT90LS8535和8255A的接口
11. 4 帶片內RAM的I/O擴展芯片8155
11. 4. 1 8155的引腳和內部結構.
11. 4. 2 8155的I/O口工作方式
11. 4. 3 8155的定時/計數器
11. 4. 4 8155的命令和狀態字
11. 4. 5 AT90LS8535與8155的接口及編程
11. 5 定時/計數器芯片8253
11. 5. 1 8253的信號引腳和邏輯結構
11. 5. 2 8253的工作方式
11. 5. 3 8253的控制字
11. 5. 4 AT90LS8535與8253的接口及編程
11. 6 實時時鐘芯片DS1302
11. 6. 1 DS1302的引腳和內部結構
11. 6. 2 DS1302的控制方式
11. 6. 3 AT90LS8535與DS1302的接口與編程
11. 7 數字溫度傳感器DS18B20
11. 7. 1 DSl8B20的引腳和內部結構
11. 7. 2 DS18B20的溫度測量
11. 7. 3 AT90LS8535與DS18B20的接口與編程
第12章 AT90LS8535的通信編程
12. 1 串口通信
12. 1. 1 異步串口UART通信
12. 1. 2 同步串口SPI通信
12. 2 I2C總線
12. 2. 1 I2C總線協議
12. 2. 2 采用AT90LS8535的并行I/O口模擬I2C總線
12. 3 CAN總線
12. 3. 1 CAN總線的特點
12. 3. 2 CAN協議的信息格式
12. 3. 3 CAN控制器SJA1000
12. 3. 4 AT90LS8535與SJA1000的接口及編程
12. 4 AT90LS8535單片機與PC的串行通信
12. 4. 1 基于VC 6. 0的PC串口通信
12. 4. 2 應用實例
第13章 系統設計中的程序處理方法
13. 1 數字濾波處理
13. 1. 1 平滑濾波
13. 1. 2 中值濾波
13. 1. 3 程序判斷濾波
13. 2 非線性處理
13. 2. 1 查表法
13. 2. 2 線性插值法
標簽:
AVR
單片機
C語言編程
應用實例
上傳時間:
2013-11-04
上傳用戶:元宵漢堡包
-
TLC2543是TI公司的12位串行模數轉換器,使用開關電容逐次逼近技術完成A/D轉換過程。由于是串行輸入結構,能夠節省51系列單片機I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應用。
TLC2543的特點
(1)12位分辯率A/D轉換器;
(2)在工作溫度范圍內10μs轉換時間;
(3)11個模擬輸入通道;
(4)3路內置自測試方式;
(5)采樣率為66kbps;
(6)線性誤差±1LSBmax;
(7)有轉換結束輸出EOC;
(8)具有單、雙極性輸出;
(9)可編程的MSB或LSB前導;
(10)可編程輸出數據長度。
TLC2543的引腳排列及說明
TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1
TLC2543電路圖和程序欣賞
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit clock=P1^0; sbit d_in=P1^1;
sbit d_out=P1^2;
sbit _cs=P1^3;
uchar a1,b1,c1,d1;
float sum,sum1;
double sum_final1;
double sum_final;
uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar wei[]={0xf7,0xfb,0xfd,0xfe};
void delay(unsigned char b) //50us
{
unsigned char a;
for(;b>0;b--)
for(a=22;a>0;a--);
}
void display(uchar a,uchar b,uchar c,uchar d)
{
P0=duan[a]|0x80;
P2=wei[0];
delay(5);
P2=0xff;
P0=duan[b];
P2=wei[1];
delay(5);
P2=0xff;
P0=duan[c];
P2=wei[2];
delay(5);
P2=0xff;
P0=duan[d];
P2=wei[3];
delay(5);
P2=0xff;
}
uint read(uchar port)
{
uchar i,al=0,ah=0;
unsigned long ad;
clock=0;
_cs=0;
port<<=4;
for(i=0;i<4;i++)
{
d_in=port&0x80;
clock=1;
clock=0;
port<<=1;
}
d_in=0;
for(i=0;i<8;i++)
{
clock=1;
clock=0;
}
_cs=1;
delay(5);
_cs=0;
for(i=0;i<4;i++)
{
clock=1;
ah<<=1;
if(d_out)ah|=0x01;
clock=0;
}
for(i=0;i<8;i++)
{
clock=1;
al<<=1;
if(d_out) al|=0x01;
clock=0;
}
_cs=1;
ad=(uint)ah;
ad<<=8;
ad|=al;
return(ad);
}
void main()
{
uchar j;
sum=0;sum1=0;
sum_final=0;
sum_final1=0;
while(1)
{
for(j=0;j<128;j++)
{
sum1+=read(1);
display(a1,b1,c1,d1);
}
sum=sum1/128;
sum1=0;
sum_final1=(sum/4095)*5;
sum_final=sum_final1*1000;
a1=(int)sum_final/1000;
b1=(int)sum_final%1000/100;
c1=(int)sum_final%1000%100/10;
d1=(int)sum_final%10;
display(a1,b1,c1,d1);
}
}
標簽:
2543
TLC
上傳時間:
2013-11-19
上傳用戶:shen1230
-
摘要: 串行傳輸技術具有更高的傳輸速率和更低的設計成本, 已成為業界首選, 被廣泛應用于高速通信領域。提出了一種新的高速串行傳輸接口的設計方案, 改進了Aurora 協議數據幀格式定義的弊端, 并采用高速串行收發器Rocket I/O, 實現數據率為2.5 Gbps的高速串行傳輸。關鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協議
為促使FPGA 芯片與串行傳輸技術更好地結合以滿足市場需求, Xilinx 公司適時推出了內嵌高速串行收發器RocketI/O 的Virtex II Pro 系列FPGA 和可升級的小型鏈路層協議———Aurora 協議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時鐘生成及恢復等功能, 可以理想地適用于芯片之間或背板的高速串行數據傳輸。Aurora 協議是為專有上層協議或行業標準的上層協議提供透明接口的第一款串行互連協議, 可用于高速線性通路之間的點到點串行數據傳輸, 同時其可擴展的帶寬, 為系統設計人員提供了所需要的靈活性[4]。但該協議幀格式的定義存在弊端,會導致系統資源的浪費。本文提出的設計方案可以改進Aurora 協議的固有缺陷,提高系統性能, 實現數據率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應用前景。
標簽:
Rocket
2.5
高速串行
收發器
上傳時間:
2013-11-06
上傳用戶:smallfish
-
摘要: 串行傳輸技術具有更高的傳輸速率和更低的設計成本, 已成為業界首選, 被廣泛應用于高速通信領域。提出了一種新的高速串行傳輸接口的設計方案, 改進了Aurora 協議數據幀格式定義的弊端, 并采用高速串行收發器Rocket I/O, 實現數據率為2.5 Gbps的高速串行傳輸。關鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協議
為促使FPGA 芯片與串行傳輸技術更好地結合以滿足市場需求, Xilinx 公司適時推出了內嵌高速串行收發器RocketI/O 的Virtex II Pro 系列FPGA 和可升級的小型鏈路層協議———Aurora 協議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時鐘生成及恢復等功能, 可以理想地適用于芯片之間或背板的高速串行數據傳輸。Aurora 協議是為專有上層協議或行業標準的上層協議提供透明接口的第一款串行互連協議, 可用于高速線性通路之間的點到點串行數據傳輸, 同時其可擴展的帶寬, 為系統設計人員提供了所需要的靈活性[4]。但該協議幀格式的定義存在弊端,會導致系統資源的浪費。本文提出的設計方案可以改進Aurora 協議的固有缺陷,提高系統性能, 實現數據率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應用前景。
標簽:
Rocket
2.5
高速串行
收發器
上傳時間:
2013-10-13
上傳用戶:lml1234lml
-
數字運算,判斷一個數是否接近素數
A Niven number is a number such that the sum of its digits divides itself. For example, 111 is a Niven number because the sum of its digits is 3, which divides 111. We can also specify a number in another base b, and a number in base b is a Niven number if the sum of its digits divides its value.
Given b (2 <= b <= 10) and a number in base b, determine whether it is a Niven number or not.
Input
Each line of input contains the base b, followed by a string of digits representing a positive integer in that base. There are no leading zeroes. The input is terminated by a line consisting of 0 alone.
Output
For each case, print "yes" on a line if the given number is a Niven number, and "no" otherwise.
Sample Input
10 111
2 110
10 123
6 1000
8 2314
0
Sample Output
yes
yes
no
yes
no
標簽:
數字
運算
上傳時間:
2015-05-21
上傳用戶:daguda
-
電力系統在臺穩定計算式電力系統不正常運行方式的一種計算。它的任務是已知電力系統某一正常運行狀態和受到某種擾動,計算電力系統所有發電機能否同步運行
1運行說明:
請輸入初始功率S0,形如a+bi
請輸入無限大系統母線電壓V0
請輸入系統等值電抗矩陣B
矩陣B有以下元素組成的行矩陣
1正常運行時的系統直軸等值電抗Xd
2故障運行時的系統直軸等值電抗X d
3故障切除后的系統直軸等值電抗
請輸入慣性時間常數Tj
請輸入時段數N
請輸入哪個時段發生故障Ni
請輸入每時段間隔的時間dt
標簽:
電力系統
正
計算
運行
上傳時間:
2015-06-13
上傳用戶:it男一枚
-
光學設計軟件zemax源碼:
This DLL models an nular aspheric
surface as described in:
"Annular surfaces in annular field systems"
By Jose M. Sasian
Opt. eng. 36 (12) P 3401-3401 December 1997
This surface is essentially an odd aspheric surface with an offset in the aspheric terms.
The sag is given by:
Z = (c*r*r) / (1+(1-((1+k)*c*c*r*r))^ 1/2 ) + a*(r-q)^2 + b*(r-q)^3 + c*(r-q)^4 + ...
Note the terms a, b, c, ... have units of length to the -1, -2, -3, ... power.
標簽:
described
aspheric
surfaces
Annular
上傳時間:
2014-01-08
上傳用戶:yyyyyyyyyy