2015-05-16 17:24
@DIARY引っ越し前に下書公開。内容はよくわからんけど、時間がたってパソコンが変わって新規環境構築しようとしたらしい。どうやって引っ越しするか(2015/05/16)。
*****
こっちの新しいパソコンにはMPLAB C18は無いと。
http://www.microchip.comにアクセスしてと。
・・・・・・・
MPLABがどこにあるのかわからない。全くめんどい。
Design-Development Toolsにあったけど。分かりにくい。
てらてら探す。
MPLAB C Compiler for PIC18 MCUs
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en010014
- MPLAB C for PIC18 v3.38 in LITE mode 5/4/2011 8:26:00 AM 75781 KB
- MPLAB C for PIC18 v3.38 Standard-Eval Version 5/4/2011 8:24:00 AM 75781 KB
- MPLAB C for PIC18 v3.38 Upgrade Version 5/4/2011 8:28:00 AM 75781 K
LITEかStandard-Evalか。
Standard-Evalにしとこう。
・・・・・・・
ダウンロードとインストール。
本にあったような「PATHを登録する」とか無く終了。大丈夫?。
MPLAB IDEでプロジェクト作成。
PIC18F67J60
プログラミング言語の指定で「Microchip C18 Toolsuite」を選択、
・・・・・・・
できない。選択肢にいない。再起動必要??。
C:\Program Files\Microchip\mplabc18
ちゃんとインストールされてるみたい。
「□Show all installed toolsuites」のチェックいれたら「Microchip C18 Toolsuite」が選択できるようになった。
プロジェクト
C:1\LANSample\LANSample01\LANSample01
とりあえずできたが。空のプロジェクト。
P102、6-1TCP/IPスタックの使い方に飛ぶ。
マイクロチップのスタックを入手する。
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2504
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en547784
Microchip Application Libraries v2011-06-02 Windows
このLibrariesに含まれているみたい。TCP/IPスタックが。
microchip-application-libraries-v2011-06-02-windows-installer.exe
「C:\Microchip Solutions v2011-06-02」にインストール。
Select Component、とりあえず全部。
JAVAインストールとか言ってきた。
http://www.java.com/en/download/inc/windows_upgrade_xpi.jsp
結局再インストール。完了。
スタックのファイルをコピー。
丸ごと??。なんで。
【Include】
【TCPIP Stack】
【TCPIP】の【Demo App】のHardwareProfile.h、TCPIPConfig.h
【Output】フォルダを作りここにコンパイル結果が来るようにすると。
2014-04-13 20:53
@DIARYをはじめていただきありがとうございます。
- @DIARYは無料のブログサービスです。
- この記事は自由に編集することができます。
- 登録したパスワードを用いてログインすることで、各種変更(ブログ名、固定ページ、デザイン、広告管理、等)することができます
まずはこちらをご覧ください。
分からないことは?
その他お勧めサービスについて
- 大容量1G、PHP/CGI、MySQL、FTPが使える無料ホームページは@PAGES
- 2ch型の無料掲示板は@chsをご利用ください
- フォーラム型の無料掲示板は@bbをご利用ください
- お絵かき掲示板は@paintをご利用ください
- その他の無料掲示板は@bbsをご利用ください
おすすめ機能
その他にもコミュニティ機能も充実しています!!
バグ・不具合を見つけたら? 要望がある場合は?
※不要であればこの記事は削除してください
2012-03-25 11:43
①C18の標準液晶ライブラリ使用(失敗)
結局正しいやり方が分からない。
参考サイト:
電子工作室
http://www.picfun.com/mod18frame.html
昨日挫折した続きから。
液晶表示の使い方
(PIC18シリーズ、MPLAB-C18標準液晶表示関数使用)
液晶表示器の接続方法が決まったら、LCD制御関数のヘッダーファイルを修正
してモジュール関数ライブラリを再構築します。
(1) ヘッダーファイルの修正
C:\Program Files\Microchip\mplabc18\v3.41\h\xlcd.h
(a) 上位4ビットである指定をするため #define UPPER の行のコメントをはずす
(b) 制御用の3ビットの各ピンとTRISビットを指定する。
この時、TRISビットの指定方法がオリジナルは間違っているので一緒に訂正
します。
#define UPPERを有効にする。
液晶は、
E RF3
RS RF2
DB4-7 RF4-7
なので修正
(2) バッチファイルを使ってライブラリを再構築する。
これが分からない。
変更
(a) pathの追加(1行目)
(b) ヘッダーファイルのディレクトリ指定
C:\Program Files\Microchip\mplabc18\v3.41\src\makeonep.bat" 18f67j60
バッチファイルmakeonep.bat:
"
'path d:\mplab\;d:\mcc18\;d:\mcc18\bin\;d:\mcc18\h\;
path "C:\Program Files\Microchip\";"C:\Program Files\Microchip\mplabc18\";"C:\Program Files\Microchip\mplabc18\v3.41\bin\";"C:\Program Files\Microchip\mplabc18\v3.41\h\";
cd ..
cd lib
del p%1.lib
mplib /c p%1.lib
cd ..
cd src
cd proc
del *.o
del *.err
del *.lst
mpasm /l- /o /q /d__SMALL__ /p%1 p%1.asm
mplib /r ..\..\lib\p%1.lib p%1.o
cd ..
cd pmc
cd XLCD\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -ms -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd CCP\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd PWM\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd i2c\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd mwire\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd SPI\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd SW_SPI\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd SW_UART\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd Timers\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd USART\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd ADC\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd reset\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd PORTB\18Cxx
del *.o
del *.err
del *.lst
for %%i in (*.c) do c18demo -ms -i"C:\Program Files\Microchip\mplabc18\v3.41\h\" -p=%1 %%i
for %%i in (*.asm) do mpasm /l- /o /q /d__SMALL__ /p%1 %%i
for %%i in (*.o) do mplib /r ..\..\..\..\lib\p%1.lib %%i
cd ..\..
cd ..
pause 'エラー出た時の確認のためメッセージ止める
ここで注意が必要なことは、統合開発環境のMPLABをインストールする時に、
DOS版のMPASMを含めて全てインストールしておくことです。
これはMPLABのインストール時にはデフォルトで選択状態になっていますので
MPLABで全てYESと答えてインストールしていれば自動的にインストールされ
ます。
結局、MPASMがないとかでエラー。
最近のはDOS版のMPASM入ってない。
MPASMWIN.exeしかないのでこちらに変更したがやはり無理。
②C18で我流の液晶関数でやる場合(失敗)
エラーで止まる。
参考サイト:
液晶ディスプレイ(LCD)を使う(C18)
http://homepage3.nifty.com/mitt/pic/c18/c18_2320_01.html
ここのサイトをプログラムをPIC18F67J60に変更してみたら発生。
Error - could not find definition of symbol 'TBLPTRL' in file 'C:\Program Files\Microchip\mplabc18\v3.41\lib/c018i.o'.
なぜだろう。このエラーで検索しても、Linkがどうとか、コンパイラの最適化機能が切れたら出るとか。いろいろあるけど明確な回答なし。
- 昨日のLED点滅プログラムではエラーはでない。
- 元のサイトのプログラムでもエラーはでない。(#pragma config OSC~は全部無効、有効にするとエラーになる)
- PIC18F67J60にしてポート直したらでる。(#pragma config OSC~は全部無効)
地道に1を育てるしかないか。そもそもconfigなにも設定しないのになんで動いているのかも疑問。
液晶は後閑さんの本のCDについていた6-3のプログラムを書き込んだら表示した。
回路は間違っていないってことで良しとするか。
追記:
新規プロジェクトにするとき
The Extended CPU Mode configuration bit is enabled, but the program that was loaded was not built using extended CPU instructions. Therefore, your code may not work properly.
とか言うエラーが最初出たが、正しくCプログラムを登録し直したらでなくなった。
2012-03-24 21:14
電源入れても何も動かない。プログラムから作るか。
C18もインストールし直そう。
MPLABC18インストール参考サイト:
PICマイコン入門: MPLAB C18のインストール
MPLABC18でのプログラム参考サイト:
PICFUNのサイトはMPLABが古くて分からなかった・・・。
MPLAB C18の使い方
BUILD OPTIONのところは特にいじっていない。lkrファイルの位置がわからなかったから。
あとは、LED点滅でもさせよう。
プログラムの参考サイト:
電子工作室
MP3プレーヤー自作:MPLAB C18のテスト、PIC18F452でLED点滅ピコピコ
通常のdelay関数じゃなくて
Delay10KTCYx(250);
とかなんかよくわからん。PIC18難しい。
PIC18F67J60なんてマニアックなマイコンなのかな。
ヘッダーファイル:
p18f67j60.hとかどこかと。ここにあったけど大丈夫だろうか。エラーにならないし大丈夫なのだろう。
C:\Program Files\Microchip\mplabc18\v3.41\h
こんなとこ。とりあえずLED点滅した。
作成ファイル:
#include <p18f67j60.h>
#include <delays.h>
#include <stdio.h>
//void nanntoka_kannsuu(unsigned int);
//LED1 RE2ポートHiで点灯
//LED2 RE3ポートHiで点灯
//LED3 RE4ポートHiで点灯
//LED4 RE5ポートHiで点灯
//SW1 MCLR(リセット)/DIPSW1と同入力
//SW2 RB2,RB3ポート /DIPSW2と同入力
//SW3 RB1ポート /DIPSW3と同入力
//SW4 RB0ポート /DIPSW4と同入力
void main (void) {
TRISA = 0x00; //output
TRISB = 0x00; //output
TRISC = 0x00; //output
TRISD = 0x00; //output
TRISE = 0x00; //output
TRISF = 0x00; //output
LATA = 0;
LATB = 0;
LATC = 0;
LATD = 0;
LATE = 0;
LATF = 0;
while (1) {
PORTEbits.RE2 = 1;
PORTEbits.RE3 = 1;
PORTEbits.RE4 = 1;
PORTEbits.RE5 = 1;
Delay10KTCYx(250); //delay(60000);
PORTEbits.RE2 = 0;
PORTEbits.RE3 = 0;
PORTEbits.RE4 = 0;
PORTEbits.RE5 = 0;
Delay10KTCYx(250); //delay(60000);
}
}
この後、液晶表示に挑戦したが、討ち死に。
うまくいかないことばかり。
参考サイト:
電子工作室
PIC18シリーズ用のC言語コンパイラである、MPLAB-C18には、標準で液晶表示
器の制御用関数があらかじめ用意されています。
但し、この関数は液晶表示器とPICとの接続方法によって、ヘッダーファイルを
書き換えてライブラリ関数を再構成する必要があります。
(1) ヘッダーファイルの修正
液晶表示器のヘッダーファイル「xlcd.h」は、MPLAB-C18をインストールすると
自動的にヘッダーディレクトリ(d:\mcc18\h\)に格納されます。
ここでd:\mcc18はMPLAB-C18コンパイラをインストールしたディレクトリです。
ここにあるxlcd.hファイルを下記のように修正します。修正個所は下記の2箇所
です。
(a) 上位4ビットである指定をするため #define UPPER の行のコメントをはずす
(b) 制御用の3ビットの各ピンとTRISビットを指定する。
この時、TRISビットの指定方法がオリジナルは間違っているので一緒に訂正
します。
(2) バッチファイルを使ってライブラリを再構築する。
ヘッダーファイルを修正したら、既にライブラリとして存在する関数群を再構築
する必要があります。
・・・駄目だ、多過ぎて覚えきれない。
電子工作のテスト工場 [ キャラクタ液晶モジュールの使い方 ACM0802C-NLW-BBH PICから制御 ]
・・・ソースコードは見えているが・・・絵だ。
PIC18の液晶表示は難しい。
そもそもクロックも設定してないような気がする。
こんな適当で大丈夫か。
2012-03-24 17:26
test_force » Blog Archive » PIC32MX基板⑫液晶交換
http://www3.atword.jp/watawataknoppix/2011/06/13/pic32mx%e5%9f%ba%e6%9d%bf%e2%91%ab%e6%b6%b2%e6%99%b6%e4%ba%a4%e6%8f%9b/
ので分解してみた。
液晶だからなにか液体でるかと思ったけど。
2011-11-27 12:52
USBで動く基板を作りたくてこの本参照。
書籍案内:改訂新版 PICで楽しむUSB機器自作のすすめ|gihyo.jp … 技術評論社
http://gihyo.jp/book/2011/978-4-7741-4781-9
PIC18F14K50 140円(秋月電子)
20Pソケット
基板
コンデンサ0.47uF
コンデンサ10uF
コイル100uH(これいるのかよくわからないけど購入)
だいたいの配置完了。
USBminiBコネクタ。以前買っていた。でもこれに配線するのは至難の業。一応つながってはいるらしい。
USBピン配置:
機器側を基板で作るので、VbusmD-,D+,ID(未接続),GNDで接続。
Universal Serial Bus - Wikipedia
http://ja.wikipedia.org/wiki/Universal_Serial_Bus
今日はここまで。