Re: 請問I2C & UART 同時使用時的鮑率設定
|
||||
---|---|---|---|---|
資深會員
|
了解
謝謝 我也想用87xA, 可是沒辦法ㄚ...... 8x 的庫存還不少, 只好繼續用啦.
發表於: 2005/3/7 11:43
|
|||
|
Re: About A/D sample frequency and resolution
|
||||
---|---|---|---|---|
版主
|
1. 如果你要用C來編輯會比較簡單,PIC16F877A可以用 Hi-Tech PICC or CCS , PIC18Fxxxx則可以用MPLAB C18來編譯。 MPLAB C18 可以在"www.microchip.com"下載。
2. 16F877 及 18F452 的 ADC resoutions 是 10-bits, 最快轉換時間為19.2us ( 12Tad * 1.6uS), sampling time are 20uS therefore the totally conversion time are 39.2uS (19.2uS+20uS。 如果要更快一點可考慮PIC18F4520 轉換速度為 10uS。 3. 有關固定取樣轉換的機制,是可以用Timer來驅動的。例如有一聲音需以 8KHz的頻率取樣,則可以設定Timer 每隔 125uS 來中斷並啟動AD轉換,這樣AD就會成為8KHz的轉換。 4. PIC 的硬體 PWM 輸出最高解析度為 10-bits , 最高輸出頻率為 19.5KHz,你只要在加入一個 RC low pass filter 就可以成為一個具有10-bits的 DAC. 5. 有關範例程式可參考右邊 "教育訓練" 裡的講義 W410 教材
發表於: 2005/3/7 10:00
|
|||
|
Re: About A/D sample frequency and resolution
|
||||
---|---|---|---|---|
新會員
|
非常感谢
我想用C 编,感觉上Assemble会写很长且复杂 仍有一些困惑 1。怎样改变resolution? 8 or 10 or 4 bits? 不太懂 有没有比较现成的程序可参考 2。 采样频率。是Tad吗? 与外接时钟有何直接关系? 关于timer interrupt or simply delay loop 可否请您再详细解释? 有没有比较现成的程序可参考 因为我新手一个,对于编程很触,自学了好久也没有入门的感觉 还望高手赐教。
發表於: 2005/3/7 0:56
|
|||
|
Re: PIC16F877 遇到問題-4 - A/D
|
||||
---|---|---|---|---|
管理員
|
Hi,
PICmicro 的一些參數規範必須遵守 , 以便讓各模組正常工作. 以 PIC17F877 的 A/D 為例 , 在 Data Sheet 的 Table 15-2 有下列重要的訊息: Vref+ 的最小值要 AVDD - 2.5V Vref+ 與 Vref- 的最小壓差 = 2.0 V 我想這是為何轉換結果怪異的原因之一 ! 另外要調整 Sample Frequency 轉換時間的方法如下 : 1. 調整 ADCON0 的 Bit6 & Bit7 ( ADCS0 & ADCS1 ) 就可調 整 TAD , 如此可控制轉換時間 ( 10 bit 解析度需 12 個 TAD ) . 但要注意 TAD 不可小於 1.6 uS. 2. 當轉換完成時取樣保持電路自動會 "ON" , 一直到設定了 ADCON0.GO 開始轉換時才停止取樣 ; 所以取樣多久通常靠 自己的程式控制啦 ! 但要注意 , 切換 Channel 後的取樣時間 要夠才不會有串音 ( Cross-Talk ) 的怪現象喔 :) 希望您盡快成功
發表於: 2005/3/6 23:42
|
|||
|
Re: 請問I2C & UART 同時使用時的鮑率設定
|
||||
---|---|---|---|---|
管理員
|
Hi,
SPBRG 是完全獨立於其他週邊的 . 只有 USART 用到它而已啦 ! USART 的 Baud Rate = FOSC/(64(SPBRG+1)) or FOSC/(16(SPBRG+1)). 要看你的 SPBRG = 0 or 1 至於 I2C , 若是用 H/W 的 Master 功能 , SCL 的頻率應 是 FOSC / (4*(SSPADD + 1)) . 所以兩者不互相影響啦 . 祝您程式發展順利 ! 還有 , 盡量使用 PIC16F877A !
發表於: 2005/3/6 23:24
|
|||
|
Re: 請教Definitions from P16F877.INC
|
||||
---|---|---|---|---|
管理員
|
您好,
請問是用組合語言或是 C ? 若是 C 的話 , 是哪一家呢 ? 很抱歉我們無法由您的描述中很精確的了解問題. 希望能有進一步的補充說明 , 以便彼此互相交流 ! Thank You Very Much :)
發表於: 2005/3/6 23:12
|
|||
|
pic16f877 A/D问题集
|
||||
---|---|---|---|---|
新會員
|
要做一个教学实验板 论证采样和量化的过程
想用pic16f877 输入正弦波(方波和三角波) 频率不用很大 做一个8bit A/D和 D/A的硬件接口 要求学生可以拿采样频率和量化比特作实验 分别显示数字输出和模拟输出,并研究bit rate 我的思路是‘拿采样频率和量化resolution‘就是改变这两个参数 请教:1。采样频率如何设定?是Tad吗?还是系统转换速率? 能否改变采样频率?可否设定不同的通道不同的 采样频率? 2。输入正弦波(方波和三角波)数字输出用什莫观察? 3。模拟输出如果想听声音,应接什莫?怎样接? 改变采样频率 声音会有明显变化吗? 如是接示波器,波形会有明显变化吗? 4。bit rate是什莫?能够观察吗? 5。 如果给定一个A/D转换器,量化比特能改变吗? 不知pic16f877可否实现? 或有其他更适合的片子? 或直接连一个A/D和一个D/A转换器能否实现? 想用c编,程序的框架大体如何? 敬请各位大虾赐教,集思广益。感激不尽!!
發表於: 2005/3/6 20:44
|
|||
|
請問I2C & UART 同時使用時的鮑率設定
|
||||
---|---|---|---|---|
資深會員
|
使用PIC16F87X, I2C和UART的BAUD RATE的設定, 基本上好像都是使用BRG timer來 down count比較.
這樣的話設定SPBRG的值是不是也同樣會改變了I2C的BAUD RATE? 相對的,改變SSPADD的值是否也會使UART的BAUD RATE被改變? 兩者的BAUD RATE 是否相關或是完全無關??
發表於: 2005/3/6 18:42
|
|||
|
Re: 程式中如何將watchdog關掉
|
||||
---|---|---|---|---|
高級會員
|
1. PIC16F876 can not disable watchdog using a command code.
2. 請參考第二篇回應 Ryang 也有提到 PIC16F87X 系列無法於程式中 disable watchdog.
發表於: 2005/3/5 15:47
|
|||
IWC
IWC JL Rolex PP 有點距離 越來越遠 |
||||
|