上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.-- -- l スポンサー広告 l top
明けましておめでとうございます。本年もよろしくお願いいたします。

今年は帰省しないことにしたので時間が有り、新年早々ですが少し前に買ってあったものをいじりはじめました。
 
物は秋月電子から買ってあったPIC12F1501です。
何故これか、というとこの石にはDAコンバータが内蔵されているのですね。普通はDACはなくて、代わりにPWMが入っていると思っていたのですが、たまたま眺めていてDACx1というのを見て購入してあった物です。
これでシグナルジェネレータ、音の良い電子オルゴールその他色々作れそうだな、と思いまして。
午前中にとりあえずユニバーサルボードに乗せてLEDチカチカから組んでみました。

「スポンサードリンク」

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




何もない回路ですが回路図はこうです。

ソフトは以下の通りです。クロック16MHzで遅くはない石ですが、メモリが少ないのでCだと大したことはできないと考えて久しぶりにアセンブラとしました。しかしアセンブラはやっぱり面倒ですね。。。。

;****************************************************
; PIC12F1501 LED BLINKING ***************************
;********* 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

;************** ORG DEFINE *******************
ORG 0h
GOTO START
ORG 4h
GOTO START
;************** INITIALIZE ********************
START
BANKSEL OSCCON
MOVLW B'01111010'
MOVWF OSCCON ; CLOCK 16MHz
BANKSEL ANSELA
CLRF ANSELA ; All digital
BANKSEL TRISA
MOVLW B'00000000' ; All output
MOVWF TRISA ;
BANKSEL PORTA
CLRF PORTA
;************** MAIN **************************
MAIN
INCF PORTA
GOTO MAIN

END






ウェイトを入れていないので目で見ても点滅しては見えません。AnalogDiscoveryでRA0の波形を見てみました。
 

 
ちゃんと矩形波が得られました。
周波数約660KHzです。16MHzCPUにしてはちょっと遅いのではないかな?と思って計算してみました。

クロック16MHzなので1サイクル4MHz、プログラムのステップ数がINCFとGOTOで合計3、つまりメインループは1.3MHzとなります。

660KHzだと半分ではないかな、と思いかけましたが、それはあくまで矩形波の周波数。切り替え周波数=メインループ周波数はその倍なので1.32MHz。
 
どうやらちゃんと16MHzで動いているようです。

このあと休み中にDACを動かして、なんらかの波形を出したいと思います。
 
そのあとはサウンドジェネレータ化して良音オルゴール作りまでやりたいのですが、正月明けのも業務予定が詰まっているので、いつになることか。。。。。
 
 
それではまたです。
2015.01.01 Thu l 未分類 l コメント (0) l top

コメント

コメントの投稿












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