| 
        
          
 
            
              
                | 
                  
                    
                      | 
                        
                          
                            | 
                              
                                
                                  |  |  | BASICでPIC32を制御しよう! |  |  
                                  |  |  | 
                                    ORANGE pico type Cはファーム書込み済PIC32MX搭載です。電源ONと同時にORANGE BASICが起動します。作成したプログラムをEEPROMに保存し、起動時に自動実行できます。 | 
                                    
                                      
                                        | 1,000円で実数BASIC |  
                                        |  
 |  |  |  
                            |   
                              
                                
                                  | マイコン回路 | PIC32MXを使った推奨回路はデータシートに公開されています。 この通りに作成しなくても動作しますが、VCAPに接続する10μFを忘れないでください。
 
 |  
                                  |  |  
                                  | ORANGE pico type C | ORANGE pico type Cの回路は非常にシンプルで ユニバーサルバードやブレッドボードでも簡単に作れます。
 
 
  
 自分で部品を集めて制作した場合は、
 PIC32MXにファームウェアを書き込む必要があります。
 
 ファームウェアのダウンロードや書込み方法は、
 ORANGE pico 資料集(共通)にあります。
 
 |  
                                  |   ORANGE pico type C 回路図
 |  
                                  | クロス開発 | ORANGE pico type Cとパソコンを接続し、プログラムの転送を行ったり、コンソールとしてキーボードの代わりに操作できます。 接続にはオレンジピコショップで販売している「USBシリアルモジュール+ケーブル」が便利です。
 
 接続は以下の通りです。
 
 
                                    
                                      
                                        | USBシリアルモジュール | マイコン回路(ORANGE pico typeC) |  
                                        | 3.3V | VDD (JP3の1番ピン) |  
                                        | TXD | RXD (JP3の2番ピン) |  
                                        | RXD | TXD (JP3の3番ピン) |  
                                        | GND | GND (JP3の4番ピン) |  パソコン側のターミナルソフトは以下のように設定します。
 
 
                                    
                                      
                                        | 通信速度 | 115200bps |  
                                        | 受信改行コード | CR |  
                                        | 送信改行コード | CR |  
                                        | ローカルエコー | なし |  
                                        | 端末ID | VT100 |  ターミナルソフトを接続し、CRを送信してOKが返れば接続完了です。
 
 |  
                                  |  |  
                                  | セルフ開発 | ORANGE pico type Cのファームはtype Aと共通ですので、テレビやPS/2キーボードを接続することもできます。 
 接続にはR3(10k)、R4(10k)、R5(560)、R6(240)が必要です。
 ORANGE pico type Aの回路図を参照してください。
 
 また、PS/2キーボードとの接続には+5Vが必要ですが、「USBシリアルモジュール+ケーブル」からとることができます。
 
 ORANGE pico type CにテレビやPS/2キーボードを接続するためのシールドも販売中です。
 
 
 |  
                                  |  |  
                                  | TFT液晶出力 | 制御するI/Oと競合しない限り、 TFT液晶(ILI9341互換コントローラー搭載品)も使用することができます。
 
 接続はTFT液晶のピン番(1~8)を対応するCPUのピンに接続します。
 
 
 
                                    
                                      
                                        | CPUのピン番号 | 信号 | TFT液晶のピン番号 |  
                                        | 13 (28) | VDD | 1(VCC) |  
                                        | 8 (19,27) | GND | 2(GND) |  
                                        | 26 | CS | 3(CS) |  
                                        | 5 | PORT9/RST | 4(RESET) |  
                                        | 21 | PORT8/DC | 5(DC/RS) |  
                                        | 22 | PORT7/MOSI | 6(SDI/MOSI) |  
                                        | 25 | PORT6/SCK | 7(SCK) |  
                                        | 3 | PORT5 | 8(LED) |  
                                        | 14 | PORT4 | 9(SDO/MISO) |  ORANGE picoのデフォルトはビデオ出力になっています。
 ORANGE picoが起動したら、ターミナルソフト(またはキーボード)から spitft 1と入力してください。
 (spitftのパラメーターは2~4も指定できます。それぞれ90度ずつ回転した表示となります。)
 リセットがかかり再起動します。
 再起動後は、ビデオ出力が無効になりTFT液晶が有効になります。
 
 PORT5がTFT液晶のバックライトを制御します。
 spitft 1で再起動されたときに自動でPORTがHIGHになり、バックライトが点灯します。
 
 ビデオ出力/TFT液晶出力の情報は、CPU内部に記憶されますので、
 次の再起動時もTFT液晶が有効になります。
 ビデオ出力にもどすには spitft 0と入力してください。
 
 |  
                                  |  |  
                                  | PWM制御の例 | 
                                    
                                      
                                        | 「ハードウェアの準備】 RGBフルカラーLEDは秋月電子で購入できます。
 
 【接続方法】
 
 
 
                                          
                                            
                                              | OSTA5131A | ORANGE pico |  
                                              | 1. Pure Green Anode 
 | 間に220Ωの抵抗を入れて、PORT4(CPUの14番ピン) 
 |  
                                              | 2. Blue Anode 
 | 間に75Ωの抵抗を入れて、PORT2(CPUの16番ピン) 
 |  
                                              | 3. Common Cathode 
 | GND(CPUの19番ピンなど) |  
                                              | 4. Red Anode 
 | 間に220Ωの抵抗を入れて、PORT3(CPUの15番ピン) |  【プログラムのポイント】
 
 最初に一度だけioctrlで指定ポートをPWM制御用に変更します。(第2パラメーターに200を指定します。)
 
 pwmのパラメーターは順に、ポート番号、周波数、デューティー比です。
 サンプルぷとグラムでは、周波数は1000Hz固定、デューティー比(0~100%)です。
 rnd(101)で0~100の乱数を返します。
 
 
 | 【サンプルプログラム】 
 100 RED_LED = 3
 110 GREEN_LED = 4
 120 BLUE_LED = 2
 130 ' ----- init -----
 140 ioctrl BLUE_LED, 200
 150 ioctrl RED_LED, 200
 160 ioctrl GREEN_LED, 200
 170 ' ----- PWM control -----
 180 control@
 190 pwm BLUE_LED, 1000, rnd(101)
 200 pwm RED_LED, 1000, rnd(101)
 210 pwm GREEN_LED, 1000, rnd(101)
 220 pause 500
 230 goto control@
 
 |  |  
                                  |  |  
                                  | I2C通信の例 【LCD ACM1602を使う】 | 
                                    
                                      
                                        | 【ハードウェアの準備】 I2C接続キャラクタLCDモジュールは秋月電子で購入できます。
 
 【接続方法】
 ORANGE picoのI2Cは2chあります。
 I2C1はPS/2キーボードに、I2C2はEEPROMに接続されています。
 EEPROMのアドレスがLCDモジュールと同じものを使用しますので、
 キーボードとの併用をあきらめて、I2C1に接続します。
 
 
 
                                          
                                            
                                              | LCD ACM1602 | ORANGE pico |  
                                              | 1:VSS 
 | GND(CPUの27番ピンなど) 
 |  
                                              | 2:VDD 
 | 3.3V(CPUの28番ピンなど) 
 |  
                                              | 3:Vc 
 | 4.7kΩを入れて3.3Vに接続 |  
                                              | 4:SCL 
 | CPUの17番ピン(4.7kΩでプルアップ) |  
                                              | 5:SDA 
 | CPUの18番ピン(4.7kΩでプルアップ) 
 |  ★バックライトに接続していません。
 バックライトを有効にする場合の接続方法は
 付属のデータシートを参照してください。
 
 
 | 【サンプルプログラム】 
 100 CH = 1
 110 SLAVE_ADDRESS = &h50
 120 cls
 130 i2ci CH, 75
 140 gosub init@
 150 lcd$ = "- ORANGE pico -"
 160 gosub display@
 170 end
 180 ' --- init ---
 190 init@
 200 i2cw(CH, SLAVE_ADDRESS, "\x00\x01")
 210 pause 5
 220 i2cw(CH, SLAVE_ADDRESS, "\x00\x38")
 230 pause 5
 240 i2cw(CH, SLAVE_ADDRESS, "\x00\x0f")
 250 pause 5
 260 i2cw(CH, SLAVE_ADDRESS, "\x00\x06")
 270 return
 280 ' --- display ---
 290 display@
 300 length = len(lcd$)
 310 for i = 1 to length
 320 s$ = mid$(lcd$, i, 1)
 330 s$ = format$("\x80%s", s$)
 340 i2cw(CH, SLAVE_ADDRESS, s$)
 350 next
 360 return
 
 |  |  
                                  |  |  
                                  |  |  |  
                                  |  |  |  |  |  |  
                | 
 |  |