• 追加された行はこの色です。
  • 削除された行はこの色です。
#freeze
 閲覧総計:&counter();  (本日:&counter(today);  昨日:&counter(yesterday);)~
 *XC8:プログラミング書式の確認 [#d396fb60]
 
 Win,Mac,Linuxの3つのOSと全てのPICで統一した開発環境 MPLAB X IEDとXC Cコン
 パイラーがMicrochip社から2012年暮れに発表されました。
 2013年6月にはXC8がv1.20にバージョンアップされました。
 
 今回XC Cコンパイラーのプログラミング(コーディング)書式をXC8で確認してみました。
 PIC16F628Aにて確認 2013/09/23
 
 【トピックス】
 ・最も手間取ったのが、コンフィグレーションワードの設定書式です。
 やっとの思いでPIC型番ごとに↓ここに書かれている事を見付けました。
 C:\Program Files (x86)\Microchip\xc8\v1.20\docs\chips\16f628a.html
 
 ・main()プログラムファイルは、Source Filesフォルダーを選択し、FileのNew Fileで
 Categories:Cで、C Main Fileを選択し作成する。main()のひな形コードを示してくれます。
 
 ・XC8 ユーザーズガイドは↓ここにダウンロードされてます。
 C:\Program Files (x86)\Microchip\xc8\v1.20\docs\manual.pdf (6.2MB 564ページ)
 
 ・PORTへの値入力の書式は、XC8 ユーザーズガイドp.143、5.3.6 Using SFRs Form C Code
 の項に記載がある。
 例:PORTAbits.RA1 = 1; //RA1をHighに
 
 |&attachref(628led点灯画像.JPG,zoom,200x300,button){新しい写真添付};|&attachref(xc8エディター全体画像.jpg,zoom,200x250,button){新しい写真添付};|&attachref(16F628Aピンデザイン画像.jpg,zoom,200x250,button){新しい写真添付};|
 
  /* 
   * File:   led_main01.c
   * Author: 管理人
   *
   * Created on 2013/09/23, 11:15
   */
  
  #include <stdio.h>
  #include <stdlib.h>
  #include <xc.h>
  
  /*
   * LEDの点灯、消灯
   * XC8 v1.20
   * PIC 16F628A
   * LED:RA1,RA2に接続
   */
  //コンフィグレーションワードの設定
  //C:\Program Files (x86)\Microchip\xc8\v1.20\docs\chips\16f628a.htmlに記述書式あり
  #pragma config BOREN = OFF //4VブラウンアウトリセットOFF
  #pragma config CPD = OFF //データーコードプロテクションOFF
  #pragma config FOSC = INTOSCIO //内部発振使用
  #pragma config MCLRE = OFF //マスタークリアー機能OFF(RA5入出力として使用)
  #pragma config WDTE = OFF //ウォッチドッグタイマーOFF
  #pragma config CP = OFF //プログラムコードプロテクションOFF
  #pragma config LVP = OFF //低電圧プログラム書き込みOFF
  #pragma config PWRTE = ON //パワーアップタイマーON
  //↓シンプル記述書式でもOK
  //#pragma config BOREN = OFF, CPD = OFF, FOSC = INTOSCIO, MCLRE = OFF
  //#pragma config WDTE = OFF, CP = OFF, LVP = OFF, PWRTE = ON
  
  int main(int argc, char** argv) {
      //PICの初期化
      PORTA = 0b00000000; //PORTAの中身をきれいにする
      TRISA = 0b00000000; //PORTAの全ての端子を0:出力に設定
      //PICの初期化終わり
  
      //メイン処理
      while(1){
          PORTAbits.RA1 = 1; //RA1をHighに
          PORTAbits.RA2 = 0; //RA2をLowに
      }
      return (EXIT_SUCCESS);
  }
 
 ★この情報は役に立ちましたか?
 #vote(はい[31],普通[0],いいえ[1])
 - 最近、アセンブラからCへの移行と、mplab8からmplabxへの移行をいっぺんに実施しようと試み、タイマ0のプリスケーラが動かない等、初歩的な部分で苦心中です。具体的な解決策が見つかる糸口が得られそうです。勉強になりました。ありがとうございます。 -- [[伊藤]] &new{2014-01-20 (月) 12:18:09};
 - 伊藤さん、参考になった様で何よりです。コメント頂きうれしいです。ありがとうございました。具体的にはどの情報が参考になりましたでしょうか?今後の参考にさせて頂きます。 -- [[管理人]] &new{2014-01-24 (金) 18:43:43};
 - 今日(2014年9月4日)mplabx xc8 をMacBook Proにインストール出来ました。古い人間なので、16F84Aの石のサンプルをネットで拾い、少し手直し(ニコイチ)してビルド成功しました。余裕がある時、秋月電子通商から純正ライタVer3を購入し、ブレッドボードテストしてみます。Windows7も持っていますが、出来る範囲ではMacBook Proを使っています。XC3の書式の詳しい説明:ありがとうございます。 -- [[上間==Uema]] &new{2014-09-04 (木) 17:17:09};
 - 文字化けしていますね!!  Uema -- [[↑]] &new{2014-09-04 (木) 17:19:11};
 - 中尾のキホンからはじめるPICマイコンいらん --  &new{2015-04-08 (水) 16:03:31};
 
 #comment_nospam