上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.-- -- l スポンサー広告 l top
とりあえずPIC12F1501のDACが動作開始しました。一番簡単な鋸状波形です。
 



「スポンサードリンク」

style="display:block"
data-ad-client="ca-pub-0620260288102702"
data-ad-slot="9773401572"
data-ad-format="auto">


ソースは以下の通りです。

;****************************************************
; PIC12F1501 DAC TEST ***************************
;********* 20150101 by Minarai Syokunin *************
;****************************************************

INCLUDE "P12F1501.inc"
__CONFIG _CONFIG1 , _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOREN_OFF & _CLKOUTEN_OFF
__CONFIG _CONFIG2 , _WRT_OFF & _STVREN_OFF & _BORV_HI & _LPBOR_OFF & _LVP_OFF

;************** VARIABLES *******************
TIM0 EQU 20H
TIM1 EQU 21H
WK0 EQU 22H

;************** ORG DEFINE *******************
ORG 0h
GOTO START
ORG 4h
GOTO START
;************** INITIALIZE ********************
START
BANKSEL OSCCON
MOVLW B'01111010'
MOVWF OSCCON ; CLOCK 16MHz
BANKSEL ANSELA
MOVLW B'00000000' ; ALL digital (DAC output = digital setting)
MOVWF ANSELA
BANKSEL TRISA
MOVLW B'00000000' ; All output
MOVWF TRISA
BANKSEL DACCON0
CLRF DACCON1 ; DAC value = 0
MOVLW B'11110000'
MOVWF DACCON0 ; DAC1,2 Enabled
CLRW
;************** MAIN **************************
MAIN
BANKSEL DACCON1
MOVWF DACCON1
ADDLW B'00000001'
ANDLW B'00011111'
CALL WAIT_250US
GOTO MAIN

;************** WAIT 250 us **************************
WAIT_250US
BANKSEL 0 ; W reg backup
MOVWF WK0
MOVLW D'100'
MOVWF TIM0
WAIT_250US1
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DECFSZ TIM0,F
GOTO WAIT_250US1
MOVF WK0,W ; W reg recover
RETURN
END


ちょっとはまったのは、DAC使用時のANSELAレジスタ設定はアナログではなくデジタルだというところ、アナログ設定はADCかコンパレータの時だけみたいですね。
あとPICKIT3を繋いだままだとDAC出力波形がおかしくなります。DACOUT2を使っていたのでPICKIT3には繋がっていないのですが。。。。。これはだいぶ悩みました。
 
それらはまあよいのですが、DACコーディングに入ってやっと気付いたこと。このPICのDACは分解能が5ビットしかないのですね。つまり32段階。普通に8ビットか10ビットだと思っていたのでちょっとびっくり。
 
データシートを見るとこのDAC出力をPIC内部でADCやコンパレータのリファレンスに使えるようになっているので、そちらが主目的でそんなに分解能を持たせていないのかもしれません。しかしなんか中途半端な仕様のように思えます。
  
上の画像を見ても結構階段状になっています。あまり細かい波形は出せないかもしれないです。
まあ次は音を出してみてどんなものか聞いてみようかと思います。


 
2015.01.01 Thu l 未分類 l コメント (0) l top

コメント

コメントの投稿












上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。