2018-10-04に更新

PIC32MX220F032BでLED点灯

PIC32MX220F032Bも買っていたのでLED点灯のテスト。
PIC24のテスト用基板を作ろうと思っていたのだが、
データシートを見る限り最小回路がほとんど同じなので
32の方もほとんど同じ回路で試してすぐに成功したら
24と32両方対応の回路にしてしまおうかと思って先に試してみた。

んで試してみた。回路は
PIC24FJ64GB002でLED点灯
とほとんど同じ。
違いは24の方はVUSBに特に処理はしていないが、
32の方はUSBを使わない場合VUSBをVddにつなぐ必要がある。

でまあサンプルを実行してみたらすぐ成功した。
しかし24までとソースが違いすぎてびびった。

|c|

include <xc.h>

include <plib.h>

pragma config FPLLMUL = MUL_20, FPLLIDIV = DIV_2, FPLLODIV = DIV_1, FWDTEN = OFF

pragma config POSCMOD = HS, FNOSC = PRIPLL, FPBDIV = DIV_8

define SYS_FREQ (80000000L)

int main(void)
{
int i;

SYSTEMConfig(SYS_FREQ, SYS_CFG_WAIT_STATES | SYS_CFG_PCACHE);
mJTAGPortEnable(DEBUG_JTAGPORT_OFF);
mPORTAClearBits(BIT_7 | BIT_6 | BIT_5 | BIT_5 | BIT_4 | \
                                                 BIT_3 | BIT_2 | BIT_1 | BIT_0 );
mPORTASetPinsDigitalOut( BIT_7 | BIT_6 | BIT_5 | BIT_5 | BIT_4 | \
                                                 BIT_3 | BIT_2 | BIT_1 | BIT_0 );

while(1)
{
        mPORTAToggleBits(BIT_7 | BIT_6 | BIT_5 | BIT_5 | BIT_4 | \
                                                 BIT_3 | BIT_2 | BIT_1 | BIT_0 );
        i = 1024*1024;
        while(i--);
}

}
||

xc.hを追加。
もともとplib.hというのがインクルードされているのだが、
これでmPORTA****という関数を使用できるようにしている。
これでLATを書き換えているみたい。
こんなのは要らないからPWMOnとかSPIReadの関数を追加してほしいな…。

ツイッターでシェア
みんなに共有、忘れないようにメモ

だら@Crieit開発者

Crieitの開発者です。 Webエンジニアです(在宅)。大体10年ちょい。 記事でわかりにくいところがあればDMで質問していただくか、案件発注してください。 業務依頼、同業種の方からのコンタクトなどお気軽にご連絡ください。 業務経験有:PHP, MySQL, Laravel, React, Flutter, Vue.js, Node, RoR 趣味:Elixir, Phoenix, Nuxt, Express, GCP, AWS等色々 PHPフレームワークちいたんの作者

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント