PIC-DEV-690RLに標準で搭載されている文字LCDの代わりに、ドットマトリックスLED:OPT-DML-2Sを搭載することができます。OPT-DML-2Sを搭載すると、ドットマトリックスLEDを利用したスケッチを楽しむことができます。
以下に、ドットマトリックスLEDの簡単なスケッチを示します。このスケッチはPIC-DEV-886RLでもそのまま利用できます。
#include "picsys16.h" void
PIC-DEV-690RLの文字LCDの代わりに、7セグメントLED:BLUE-7SEG-1を接続したスケッチ例を示します。
このスケッチはPIC-DEV-886RLでもそのまま利用できます。
#include "picsys16.h" void setup() {
PIC-DEV-690RLに標準で搭載されている文字LCDの代わりに、7セグメントLED:BLUE-7SEG-1を搭載することができます。BLUE-7SEG-1を搭載すると、7セグメントLEDを利用したスケッチを楽しむことができるようになります。
BLUE-7SEG-1では、PICの少ないピン数で4桁の7セグメントLEDに表示を行うために、ダイナミック点灯方式を利用しています。ダイナミック点灯方式を実現するための面倒な処理は、PICSYSが自動的に行ってくれます。
BLUE-7SEG-1を利用したスケッチ例を示します。このスケッチはPIC-DEV-886RLでもそのまま利用できます。
PICSYS16では、7セグメントLEDを簡単に制御することができます。
7セグメントLEDの表示に必要な継続的なリフレッシュ処理は、PICSYS16が自動的に行います。
ex7seg1.c: 7セグメントLEDの利用
#include "picsys16.h"
void setup()
{
pinMode(SW1, INPUT) ;
pinMode(SW2, INPUT) ;
pinMode(SW3, INPUT) ;
pinMode(SOUNDER, OUT_BEEP) ;
SEG7_initDefault() ;
}
byte run = FALSE ;
PICSYS16では、ドットマトリックスLEDを簡単に制御することができます。
ドットマトリックスLEDの表示に必要な継続的なリフレッシュ処理は、PICSYS16が自動的に行います。
exdml1.c: ドットマトリックスLEDの利用
#include "picsys16.h"
void setup()
{
DML_init(SR_DAT, SR_CLK, SEG1, SEG2, SEG3, SEG4) ;
pinMode(SW1, INPUT) ;
pinMode(SW2, INPUT) ;
pinMode(SW3, INPUT) ;
pinMode(SW4, INPUT) ;
}
PICSYS16では、ドットマトリックスLEDを簡単に制御することができます。
ドットマトリックスLEDの表示に必要な継続的なリフレッシュ処理は、PICSYS16が自動的に行います。
exdml1.c: ドットマトリックスLEDの利用
#include "picsys16.h"
void setup()
{
DML_initDefault() ;
pinMode(SW1, INPUT) ;
pinMode(SW2, INPUT) ;
pinMode(SW3, INPUT) ;
}
int xpos = 0 ;
void loop()
{
delayMilliseconds(100) ;
PICSYSを利用する上での技術的な注意/制約事項を示します。
ピン割り付け機能
PIC24Fの特徴的で協力な機能であるピン割り付けとそれを利用した周辺モジュールの利用機構はまだご提供できていません。
PWM
PICSYSのPWM出力は、LEDの表示の明暗をPWMのデューティー比制御により変化させる程度の簡易的な利用を想定した構成になっています。このため周波数は、ちらつきを感じない62.5Hz程度と低く、また固定されています。また、デューティー比の指定分解能はMCUのクロックによりますが、16-64になっています。
PICSYSにおけるI/Oピンの指定は、RA0の場合にはRA(0)、RB4の場合にはRB(4)の様に行います。
PICSYSはAVR用のArduinoに触発され、PICでも簡単にプログラミングを行える環境を構築することを目標に開発されたソフトウェアフレームワーク(ライブラリ)です。
PICのプログラミングで以下のようなことを感じたり、これらが利用の障害になっていませんか?