PIC専用のスレ Part37

このエントリーをはてなブックマークに追加
1774ワット発電中さん
....  /Microchip ./|
 /( ゚∀゚)    /  | アセンブラのアの字もわからない
 |~ ̄ ̄ ̄ ̄ ̄|  /. 超初心者からHEXが読めてしまう
 |/Z./Z./Z./Z_|/ ||  鬼プロフェッショナルの為のスッドレ(#゚Д゚)だ!モ゙ルァ
  ||. ||. ||. ||

大人気のPICマイコンのスレ。
なんといっても情報が豊富だし、開発環境も多いし、パッケージも豊富。
使いやすくて、しかも安い。やっぱりPICだよね。

例の如く基本リンクだ
http://www.microchip.com/  マイクロチップ本社(Microchip Technology Inc. )
http://www.microchip.co.jp/ マイクロチップ テクノロジー ジャパン 株式会社
またーりやっておくんなまし。
教えて君はとりあえずGoogle(http://www.google.co.jp/) くらい使おう

前スレ
PIC専用のスレ Part35 (実質36)
http://uni.2ch.net/test/read.cgi/denki/1322815883/
2774ワット発電中さん:2012/02/18(土) 14:17:41.17 ID:tshaCHEi
2たりこ
3774ワット発電中さん:2012/02/18(土) 15:33:40.61 ID:kSKsIwUZ
[新シリーズのPIC16F1xxx テンプレ用] ('11/09版)
旧シリーズより機能が大幅にアップしていて値段も下がってる。新規に組むならこちらから選択すべき
秋月に入荷していないラインナップも表記(未)。円高のおかげか若干値下げあり(v)

[40pin] 16kwハ必要ナイカモシレナイケド10円差ナラ
v◎16F1939 \170 16Kw 1024 I/O36 ADC14 CapS16 Comp2 Timer4/1 MSSP1 ECCP2/1 CCP2
v○16F1937 \160 08Kw 0512 I/O36 ADC14 CapS16 Comp2 Timer4/1 MSSP1 ECCP2/1 CCP2

[28pin] こちらも10円差なら
-◎16F1938 \150 16Kw 1024 I/O25 ADC11 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/2 CCP2
v○16F1936 \140 08Kw 0512 I/O25 ADC11 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/2 CCP2
v×16F1933 \140 04Kw 0256 I/O25 ADC11 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/2 CCP2

[20pin] こちらは秋月に無し
-未16F1829 ---- 08Kw 1024 I/O18 ADC12 CapS12 Comp2 Timer4/1 MSSP2 ECCP1/1 CCP2
-未16F1828 ---- 04Kw 0256 I/O18 ADC12 CapS12 Comp2 Timer4/1 MSSP1 ECCP1/1 CCP2

[18pin] 18ピンの割にMSSPが2コ,ADC入力ピン多,タイマーx5,CCPx4と多機能
-未16F1847 ---- 08Kw 1024 I/O16 ADC12 CapS12 Comp2 Timer4/1 MSSP2 ECCP1/1 CCP2
v◎16F1827 \110 04Kw 0384 I/O16 ADC12 CapS12 Comp2 Timer4/1 MSSP2 ECCP1/1 CCP2
-未16F1826 ---- 02Kw 0256 I/O16 ADC12 CapS12 Comp2 Timer2/1 MSSP1 ECCP1/- CCP-

[14pin] 下位のチップしかなく機能的に8ピンとあまり変わらないのは残念
-未16F1825 ---- 08Kw 1024 I/O12 ADC-8 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/1 CCP2
-未16F1824 ---- 04Kw 0256 I/O12 ADC-8 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/1 CCP2
v◎16F1823 \090 02Kw 0128 I/O12 ADC-8 CapS-8 Comp2 Timer2/1 MSSP1 ECCP1/0 CCP-

[8pin] 8ピンでUSARTもI2Cも使えるってのは大きいね
-未12F1840 ---- 04Kw 0256 I/O-6 ADC-4 CapS-4 Comp1 Timer2/1 MSSP1 ECCP0/1 CCP-
-◎12F1822 \080 02Kw 0128 I/O-6 ADC-4 CapS-4 Comp1 Timer2/1 MSSP1 ECCP0/1 CCP-

 表記 Timer[8bit]/[16bit],ECCP[Full]/[Half],CspS=CapSense,Comp=Comparator
 共通 EEPROM256byte,EUSART,SRLatch(555相当?),10bitADC,5bitDAC,1.024V基準電圧,温度計(?)

VDD1.8〜5,5V,Max32MHz(Vdd2.5V以上),4xPLL有,内蔵OSCでも32MHz可
プログラム面で新命令追加,bankは32マデ拡張,スタック16レベル,LATが追加,割込時のレジスタ自動保存
16bit幅で2本になったFSRデ連続配置RAMやプログラム領域アクセス可能

追加命令群
ADDWFC,SUBWFB : キャリー,ボローを含んだ加減算
ASRF,LSLF,LSRF : シフト命令
BRA : PCLATHやページ境界に関係なく相対ジャンプ [9bit幅] PC+255〜PC-256へ
BRW : PCLATHやページ境界に関係なく前方へのみ相対ジャンプ PC+W(0〜255) ADDWF PCL,f ヨリ便利
CALLW : 上位はPCLATH,下位はWのアドレスにサブルーチンコール
MOVLB,MOVLP :バンクセレクト,PCLATHに直接定数入れる
TRIS,OPTION :TRIS(A〜C),OPTION_REGにWの値入れる(12bit幅品互換?)
RESET : ソフトウェアリセト
ADDFSR : FSRに定数(-32〜+31)加減算
MOVIW,MOVWI : INDFガツカイヤスク FSRに対して[PRE/POST][+1/-1]や定数(-32〜+31)offset可能
4774ワット発電中さん:2012/02/18(土) 15:34:45.13 ID:kSKsIwUZ
秋月のPIC12/16F(旧)シリーズ 命令セット14bit幅&DIP品限定ピン数別評価
あくまでも旧シリーズ内での相対評価。新シリーズが使えない場合のみ有効
値下品多数あり(先頭のvは値下げ,-は維持,*は新規)'11/9更新版
40ピンは決まり
v◎16F887 \180 40ピン600mil幅が許せるなら 旧シリーズ最強
28ピンはフラッシュとSRAMの差をどうとるか
v◎16F886 \170 887よりピン数減ってスリム(400mil幅)
v○16F883 \150 886との違い8Kw→4Kw,SRAM368Byte→256Byte
ADC有,eCCP/CCP有,mSSP有,USART有,8Kw,内蔵31K-8MHとフルサポート
新しめのチップで内蔵モジュールも多,大きささえ許せば20,18ピンよりこちらを

20ピンはF690のバリエーション多,価格差小なのでF690か,OPアンプF785,ポート割りがチョットカオス
v◎16F690 \140 ADC有,eCCP有,eUSART有,SSP有,4Kw,内蔵31K-8MHzとバッチリ
v○16F689 \130 F690からeCCP機能削られた
v△16F687 \120 さらにF689を2Kwと半分に
v×16F677 \120 さらにF687からeUSARTも削られた
v×16F685 \150 F690からSSP&eUSART機能が削られたのに値段高いとは
v◎16F785 \130 ADC有,CCP有,2Kw,内蔵31K-8MHz,OPアンプ搭載が異色(新シリーズにも無)

18ピンは種類は多いけど選択の幅は狭い。値段でF716いっそ20pinにするか
-×16F84A \250 機能無,1Kw,新規では不要だけど作例参照用or互換用に
v×16F648A \160 CCP有,USART有,4Kw,内蔵4MHz,ADC無同士でF87に軍配
v△16F628A \140 F648Aの2Kw版,売りが値段だけだと厳しいかな
v△16F627A \120 F648Aの1Kw版,上に同じ
v×16F627 \180 F627Aの改良前Ver,なぜこんな物が・・・
-○16F88 \200 ADC有,CCP有,SSP有,USART有,4Kw,内蔵31K-8MHzと旧18ピンの王者ダガ高い
v○16F87 \150 F88のADC無Ver,ADC無が問題なければ
v○16F819 \170 ADC有,CCP有,SSP有,2Kw,内蔵31K-8MHz,F88とはROM,USARTの差
v○16F818 \150 F819の1Kw版,多機能なだけに1Kwに不安を感じる
v◎16F716 \80 ADC有,eCCP有,2Kw,内蔵CLK無,EEPROM無だけど値段安い,ADC8bit注意

14ピンは10円差ならF688
v◎16F688 \110 ADC有,eUSART有,4Kw,内蔵31K-8MHz,CCPは無が残念
v△16F676 \100 ADC有,1Kw,内蔵4MHz
v×16F630 \100 F676のADC無し 無機能で影薄い

8ピンは多機能のF683かEEPROM無くても良いなら\60のF615
v◎12F683 \100 ADC有,CCP有,2Kw,内蔵31K-8MHz,8ピンとしては多機能
v△12F675 \80/90 ADC有,1Kw,内蔵4MHz ,EEPROM必要なら,環境によってはE/P版,
v△12F629 \70 675のADC無(機能無しってこと),EEPROM必要で安いの求めるなら
v△12F635 \90/100 機能無し,1Kw,内蔵31K-8MHz,31KHz〜必要なら,環境によってはE/P版
v◎12F615 \60 ADC有,eCCP有,1kw,内蔵4Mor8MHz,EEPROM無さえ問題なければ
v×12F609 \60 F615からADC,eCCP機能省かれてる

(参考)機能無,EEPROM無,命令セット12bit幅 プログラム組む上で制限多し(割込無イヨ
v△16F57 \70 28ピン,2Kw,内蔵CLK無,安くて多くのI/O欲しいなら
-△16F54 \60 18ピン,0.5Kw,内蔵CLK無,安いI/O欲しいなら
-×12F510 \60 ADC有(8bit),1kw,内蔵4Mor8MHz,EEPROM無し
v×12F509 \50 機能無し,1Kw,内蔵4M,EEPROM無し
v△10F222 \45 DIP8ピン,1/2Kw,内蔵4Mor8MHz,米粒PICのデバッグ用
v△10F200 \35 DIP8ピン,1/4Kw,内蔵4MHz,米粒PICのデバッグ用

マークの意味
◎お勧め、用途決まっていないならこれ買っとけ
○内蔵モジュール減ってるけど、その分値段も安くなってるから、まあまあ
△内蔵モジュール大幅に減ってる、\10でも安くしたいなら、どうぞ
×ソースを変更できない等の理由がないなら、選択する必要なし
自分で、プラグラムもハードも作れる人のためのリスト。
そもそも、教科書にのってるのとか他の方の作品とかを作るだけなら
指名買いするしかないのだから お勧め度は意味がない
5774ワット発電中さん:2012/02/18(土) 15:36:13.54 ID:kSKsIwUZ
秋月のPIC18Fシリーズ 5V動作可で比較的高速(12MIPS)だが16F1xxx(8MIPS)
dsPIC30F(30MIPS)に挟まれて値段も高めで苦しい,拠り所はUSB

40ピン USB不要なら18F4525もありかな
◎18F4550 \370 16Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP1/1,SPP
△18F4520 \340 16Kw/1536/256 Max40MHz(31k-32MHz),4xPLL,CCP1/1
○18F4525 \380 24Kw/3968/1024 Max40MHz(31k-32MHz),4xPLL,CCP1/1
△18F4585 \500 24Kw/3328/1024 Max40MHz(31k-32MHz),4xPLL,CCP1/1,CAN
×18F452 \500 16Kw/1536/256 Max40MHz(内蔵CLK無し),4xPLL,CCP1/1

28ピン USB不要なら大容量で18F2620あたりも
◎18F2550 \350 16Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP2/0
△18F2455 \340 12Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP2/0
○18F2450 \260 8Kw/768/0 [USB],Max48MHz(31kHz),PLL,CCP1/0,eUSART,MSSP無,TMR16bitx2少
△18F2420 \280 8Kw/768/256 Max40MHz(31k-32MHz),4xPLL,CCP2/0
×18F2320 \420 4Kw/512/256 Max40MHz(31k-8MHz),4xPLL,CCP2/0
○18F2620 \420 32Kw/3968/1024 Max40MHz(31k-32MHz),4xPLL,CCP2/0
×18F258 \530 16Kw/1536/256 Max40MHz(内蔵CLK無し),4xPLL,CCP1/0,CAN

20ピン 値段的にも格安でお得
◎18F14K50 \170 8Kw/768/256 [USB],Max48MHz(31k〜32MHz),4xPLL,CCP0/1

18ピン 2ピン差だと体積的にメリット小
×18F1320 \220 4Kw/256/256 Max40MHz(31k〜8MHz),4xPLL,CCP0/1

PIC18F共通 VDD 〜5.5V,10bitADC,eUSART,TMR8bitx1/16bitx3,MSSP

24,dsPICシリーズ(24F,dsPICは品数限られているが値下げでお買い得感向上)

40ピン
v○30F4013 \480 16kw 2KB EEPROM1KB
v×30F3014 \500 8kw 2KB EEPROM1KB

28ピン
v◎24FJ64GA002 \330 21.3kw(64kB) 8KB EEPROM無 リビジョンはイクツカナA3/4ハナイヨナ
v◎24HJ12GP202 \260 4kw 1KB EEPROM無 この値段で40MIPSはお得感大きい
v○30F4012 \460 16kw 2KB EEPROM1KB 5V動作必須でメモリ大きいのなら
v×30F2020 \500 12kw 0.5KB EEPROM無
v△30F2012 \350 4kw 1KB EEPROM無 5V動作必須で安いの欲しいなら
v◎33FJ32GP202 \320 11kw弱(32kB) RAM2KB メモリサイズ許容できれば24FJ64より、高速

18ピン
v○30F3012 \400 8kw 2KB EEPROM1KB

共通
24Fシリーズ Vdd2.0-3.6V Max16MIPS (一部ピン5V入力可)
24Hシリーズ Vdd3.0-3.6V Max40MIPS
30Fシリーズ Vdd2.5-5.5V Max30MIPS DSP命令有,(5V動作可)
33Fシリーズ Vdd3.0-3.6V Max40MIPS DSP命令有
6774ワット発電中さん:2012/02/18(土) 21:07:37.16 ID:IsSj3Dev

このテンプレいつも参考になるなぁ。
7774ワット発電中さん:2012/02/18(土) 21:58:54.92 ID:bmRdbciU
タイマー2で3kHzのピー音を鳴らしたのですが、音が止まりません。
BCF T2CON,TMR2ONとしても
CLRF CCPR1Lとしてもダメです。
どうすればいいのでしょうか?
8774ワット発電中さん:2012/02/18(土) 22:09:46.29 ID:Ky8ftCUn
>>7
「タイマー2で3kHzのピー音を鳴らしたのですが」
どうやって?
9 ◆yaya/99832 :2012/02/18(土) 22:12:16.06 ID:/6hSQv29

Kのついた新しい PIC のテンプレもほしいところですね。
私は初心者なのであまり詳しくないのですが、うわっつらのスペック(と値段)を
見る限り、18F14K50 がオススメっぽいと思うんですが、どうでしょう?
10774ワット発電中さん:2012/02/18(土) 22:26:57.81 ID:yWkBl46P
>>9

>20ピン 値段的にも格安でお得
>◎18F14K50 \170 8Kw/768/256 [USB],Max48MHz(31k〜32MHz),4xPLL,CCP0/1
11774ワット発電中さん:2012/02/19(日) 00:00:30.88 ID:2dtldz6z
>>7
PICが音を出すわけじゃない

PICで矩形波を出力する方法は沢山あります。
あなたがどうやって矩形波を出してるか説明して下さい
12774ワット発電中さん:2012/02/19(日) 00:10:43.23 ID:xHwX1jJF

トラ技見たんだけど、PLDモドキが載ったデバイスまであるんだな。
13774ワット発電中さん:2012/02/19(日) 00:27:34.43 ID:baxIdVPU
14K50はなんか仕様が変態だったから避けた
14774ワット発電中さん:2012/02/19(日) 00:28:24.80 ID:ghTDBy0U
■18Fシリーズは5V動作可(J除)で比較的高速(10〜MIPS) 新型のKシリーズは多機能で高速(16MIPS) '12/2更新版

40ピン 旧ラインナップしかないので苦しい、USBの4550か不要なら4525もありかな
-◎18F4550 \370 16Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP1/1,SPP
-△18F4520 \340 16Kw/1536/256 Max40MHz(31k-32MHz),4xPLL,CCP1/1
-○18F4525 \380 24Kw/3968/1024 Max40MHz(31k-32MHz),4xPLL,CCP1/1
-△18F4585 \500 24Kw/3328/1024 Max40MHz(31k-32MHz),4xPLL,CCP1/1,CAN
-×18F452 \500 16Kw/1536/256 Max40MHz(内蔵CLK無し),4xPLL,CCP1/1

28ピン 新ラインナップが強力。多機能・高速の26K22か12bitADCの25K80かUSBで26J50か
-×18F258 \530 16Kw/1536/256 Max40MHz(内蔵CLK無し),4xPLL,CCP1/0,CAN
*×18F248 \500 8Kw/768/256 ↑258のメモリ縮小版
*×18F252 \450 16Kw/1536/256 Max40MHz(内蔵CLK無し),4xPLL,CCP2/0,
*×18F242 \420 8Kw/768/256 ↑252のメモリ縮小版
*×18F2580 \430 16Kw/1536/256 Max40MHz(31k-32MHz),4xPLL.CCP1/0,CAN
*×18F2480 \390 8Kw/768/256 ↑2580のメモリ縮小版
-×18F2620 \420 32Kw/3968/1024 Max40MHz(31k-32MHz),4xPLL,CCP2/0
-×18F2420 \280 8Kw/768/256 Max40MHz(31k-32MHz),4xPLL,CCP2/0
-×18F2320 \420 4Kw/512/256 Max40MHz(31k-8MHz),4xPLL,CCP2/0
-×18F2550 \350 16Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP2/0
-×18F2455 \340 12Kw/2048/256 [USB],Max48MHz(31k-8MHz),PLL,CCP2/0
-×18F2450 \260 8Kw/768/0 [USB],Max48MHz(31kHz),PLL,CCP1/0,MSSP無,TMR0/2
*×18F2523 \390 16Kw/1536/256 Max40MHz(31k-32MHz),4xPLL,CCP2/0,12bitADC
*○18F2431 \340 8Kw/768/256 Max40MHz(31k-8MHz),4xPLL,CCP2/0.14bitPWMx6
*×18F2321 \240 4Kw/512/256 Max40MHz(31k-32MHz),4xPLL,CCP2/0
*×18F2221 \220 2Kw/512/256 ↑2321のメモリ縮小版
*◎18F26K22 \220 32Kw/3896/1024 Max64MHz(31k-64MHz),4xPLL,eUSART2.TMR3/4,MSSP2,CCP2/3,SRLatch
*○18F23K22 \160 4Kw/512/256 ↑26K22のメモリ縮小版
*◎18F25K80 \220 16Kw/3648/1024 Max64MHz(31k-64MHz),4xPLL,eUSART2,TMR2/3,CCP4/1,12bitADC.ECAN
*○18F26K20 \190 32Kw/3936/1024 Max64MHz(31k-64MHz),4xPLL,CCP1/1
*△18F23K20 \150 4Kw/512/256 ↑26K20のメモリ縮小版
*◎18F26J50 \260 32Kw/3776/0 [USB],Max48MHz(31k-48MHz),PLL,eUSART2,TMR2/3,MSSP2,CCP0/2,リマップ,▲3.6V
*○18F25J50 \230 16Kw/3776/0 ↑25J50のメモリ縮小版,▲3.6V
*△18F26J11 \240 32Kw/3776/0 Max48MHz(31k-32MHz),4xPLL,eUSART2,TMR2/3,MSSP2,CCP0/2,リマップ,▲3.6V
*△18F25J11 \210 16Kw/3776/0 ↑26J11のメモリ縮小版,▲3.6V

20ピン USBの有無でK50かK22を
-◎18F14K50 \170 8Kw/768/256 [USB],Max48MHz(31k〜32MHz),4xPLL,CCP0/1
*×18F13K50 \170 4Kw/512/256 ↑14K50のメモリ縮小版
*◎18F14K22 \160 8Kw/512/256 Max64MHz(31k-64MHz),4xPLL,CCP0/1,SRLatch

18ピン 20ピンから選択すべき、14bitPWMx6に魅力あれば1230を
-×18F1320 \220 4Kw/256/256 Max40MHz(31k〜8MHz),4xPLL,CCP0/1,MSSP無
*×18F1220 \210 2Kw/256/256 ↑1320のメモリ縮小版
*△18F1230 \220 2Kw/256/128 Max40MHz(31k-32MHz),4xPLL,TMR0/2,MSSP無,CCP無,14bitPWMx6

PIC18F共通 VDD 〜5.5V,10bitADC,eUSART,TMR8bitx1/16bitx3,MSSP
追加表記 CCPx/y/ x=CCP数/y=eCCP , TMRx/y x=8bit/y=16bit
15774ワット発電中さん:2012/02/19(日) 00:30:50.42 ID:ghTDBy0U
PIC18版を更新しました、疲れた。
PIC12/16と24&dsは新品種や値段に変化ないのでそのままです。
16774ワット発電中さん:2012/02/19(日) 00:48:18.54 ID:3wcZIPt9
無料コンパイラの質を考えると、多少高くても18F使いたいところ。
遅くて小規模なら16Fの新シリーズも有りかと思うけど。
17774ワット発電中さん:2012/02/19(日) 02:58:40.54 ID:1NSyLpnI
PIC16Fでラジコンが平面座標でどれだけ移動したかを感知したいんだけどいい方法ないかな
18774ワット発電中さん:2012/02/19(日) 03:14:36.94 ID:nAZ2atKQ
ぱっと思いついたのは光学式マウスをラジコンに取り付けてPICでマウスの出力を読み取る
19774ワット発電中さん:2012/02/19(日) 03:32:34.90 ID:1NSyLpnI
>>18
ラジコンの車高を最低5センチほど高くしないといけないのでマウスは無理ですね
20774ワット発電中さん:2012/02/19(日) 03:46:45.34 ID:080WzhYH
マウス引きずれば?w
路面の粒度で誤差ありまくり、アスファルトや土の上でやるとマウス即死だろうけどw
21774ワット発電中さん:2012/02/19(日) 03:50:49.38 ID:5t7oDdzL
三軸ジャイロと加速度センサーだろ
ドイツじゃ真空管使って68年前にロケットに載せてるぞ
22774ワット発電中さん:2012/02/19(日) 04:19:49.57 ID:1NSyLpnI
>>21
kwsk
23774ワット発電中さん:2012/02/19(日) 06:16:36.74 ID:ojBL2hPI
メカニカルなマウスバラせばロータリエンコーダは取れるから、
タイヤの回転数検出でもしておけば?
24774ワット発電中さん:2012/02/19(日) 07:14:50.78 ID:2dtldz6z
>>22
>>21は明らかにありふれた情報だ
kwskなんて書くような話ではない
25774ワット発電中さん:2012/02/19(日) 08:17:26.87 ID:2dtldz6z
PIC16Fでは多分実現無理だと思うが
誤差の蓄積しない、平面座標を取得する手段なら
MVPenかアノトペンのアイデア活用しかないだろう
あまり分解能が必要ないならMVPenの方式ならPIC16Fで真似できるでしょう
26774ワット発電中さん:2012/02/19(日) 10:02:08.61 ID:jDlOkM2p
平面の隅で超音波発生させればOK
27774ワット発電中さん:2012/02/19(日) 10:47:45.61 ID:jDlOkM2p
よくよく考えたら、車から超音波を発して隅で受信した方が簡単だな。
で、座標を計算して車に送り返せばいい。
28774ワット発電中さん:2012/02/19(日) 10:52:44.43 ID:baxIdVPU
GPS
29774ワット発電中さん:2012/02/19(日) 11:00:34.09 ID:2dtldz6z
>>27
超音波発生装置A,Bを平面上のそれぞれ固定された2箇所に設置する

車から全周に向けて2種類の赤外線命令を発射する

超音波発生装置Aは赤外線命令Aを受信した際に超音波を発射する

超音波発生装置Bは赤外線命令Bを受信した際に超音波を発射する


このやり方ならありふれたテクニックで実現できる
ただしA,Bからの距離を同時には測定できない
30774ワット発電中さん:2012/02/19(日) 11:00:35.13 ID:8qC2NvXL
>>19
> ラジコンの車高を最低5センチほど高くしないといけないのでマウスは無理ですね
マウスをそのまま設置するのではなくて、工学マウスを分解して部品だけ取り出し
設置する方法でも無理なのかなあ?工夫してみる価値あると思うけど。

ラジコンが実際に移動した距離が欲しいのではなく、x0,y0→x1,y1へ移動した
時の直線距離が欲しいんだよね?
31774ワット発電中さん:2012/02/19(日) 11:10:49.06 ID:jDlOkM2p
>>29
そんなめんどくさい事しなくても、隅につけたマイクで時間差取ればOK
32774ワット発電中さん:2012/02/19(日) 11:41:06.35 ID:2dtldz6z
>>31
>につけたマイクで時間差取ればOK
君の書いていることと殆ど同じだよ
車側で座標が欲しいか、そうじゃないかの違いはあるけど

マイクって言葉を使ってないから、マイクを使う方式じゃないと思ったのかな
33774ワット発電中さん:2012/02/19(日) 11:55:41.72 ID:cT/5NDlC
>>32
いや、マイク云々じゃなく、赤外線なんて、しかも2回に分けるとかメンドクサイと思った。
ラジコンから全周に超音波のパルスを発生させてマイクで受けるだけで距離はわかるよ。
しかも超音波を一回、送信するだけで。
34774ワット発電中さん:2012/02/19(日) 11:58:00.54 ID:t7A5qtTS
>>15
乙。

10f32xとかいうシリーズも出たらしいけど、どうなんだろう。
35774ワット発電中さん:2012/02/19(日) 14:14:46.87 ID:EdvEHvJx
>>24
加速度センサーで傾きを調べたりするのはありふれてますけど平面座標を取得する情報は
見つからないんですよー

>>30
そうです、でも光学マウスは地面スレスレでないと感知しないのでは?
36774ワット発電中さん:2012/02/19(日) 14:41:05.10 ID:a28krPoS
>>35
加速度センサーの値を二階積分して、自分で座標出してみるとおもしろんいじゃない?
37774ワット発電中さん:2012/02/19(日) 14:56:31.62 ID:ZXM3IfGo
28PINのPIC18F26K22に対応する40PINはPIC18F46K22だけど
秋月は売る気ないのかね A/D入力30chとかすこいんだけど
38774ワット発電中さん:2012/02/19(日) 15:16:57.84 ID:baxIdVPU
いろいろ存在してるのに、秋月が持ってきてくれないと入手できないんだよな
16F1xシリーズも、前からあったのに秋月のラインナップに入ってからいきなり人気出た
39774ワット発電中さん:2012/02/19(日) 15:37:59.82 ID:l8JxFq+F
>>7
PICのVCCをカットすれば止まる
40774ワット発電中さん:2012/02/19(日) 15:43:47.29 ID:Mbbyh28t
PIC18Fなんて一生使わないだろうと思ってたのに
18F26K22が秋月で扱われるようになって考え変わった
PIC18Fのほうから俺にすり寄ってきたw
41774ワット発電中さん:2012/02/19(日) 15:51:10.13 ID:P9y2aSrF
>>39
頭悪そうw
42774ワット発電中さん:2012/02/19(日) 15:55:33.74 ID:l8JxFq+F
>>41
だろ?w
43774ワット発電中さん:2012/02/19(日) 17:52:45.65 ID:2dtldz6z
>>36
実機とか実車のように進行方向がゆっくり変わるものなら実用になるんだが
言うまでもなく、ラジコンでは誤差が酷い筈。もしこれが実用になれば相当に便利
もっと便利なのがDGPSがGPS並みに安価になり、誤差が1mm以下になり、測位時間がほぼ瞬間になるということが実現した時

>>33
地面側の配線の都合とか、車側・地面側どちらで座標が必要かとか、通信プロトコル次第だよ
>>29はそれなりにメリットがあるんだよ
2つの地面側の固定局はそれぞれ単独で置けて長い配線が必要ない。通信プロトコルが必要ない

>>35
>>21はV2(A-4)ロケットの存在を指摘してるだけなんだから>>21に問うても仕方がない
44774ワット発電中さん:2012/02/19(日) 18:06:24.87 ID:Q8Sp+dTh
>>40
俺の所にはまだ挨拶にも来ないな
持参金付きで来てくれればうれしいんだが
45774ワット発電中さん:2012/02/19(日) 18:14:14.05 ID:2dtldz6z
>>43
書きわすれた
実機と実ロケットとか実船の慣性航法装置の加速度センサーは方式そのものが違う
46774ワット発電中さん:2012/02/19(日) 18:55:40.84 ID:csG5puac
座標系の認識に外部に設置したカメラから。ってのが動画であった。赤外線を発行する物体の
三次元座標を外部のPCで求める。外部からの光をカーテンで遮っていたので、室内専用かな。
物体の単独動作はできず、設備が大がかりなのが難点。
47774ワット発電中さん:2012/02/19(日) 19:32:27.93 ID:080WzhYH
それ、16Fだと出番あってもIR-LEDチカチカぐらいだなw
学校の選択実験でステレオカメラ使って似たのやったけど選択間違えたわ
高い機材使ってやってることはゴムボールの運動計測なんだもん、眠い…。
48774ワット発電中さん:2012/02/19(日) 20:21:46.85 ID:cZ58G0fg
>>42
ワロタw
49774ワット発電中さん:2012/02/19(日) 23:50:44.38 ID:dRfOaYI9
MPLABX+HI-TECH PICC 18-PROって18Fで使えてる?18F26K22(18Fは初めて)でLチカやろうとmain.cでdefine LED RA5ってやっただけで、undefined identifier "RA5"って出る。
でもってRA5でGo to implementationすると、なぜかpic18f87k22.hのRA5を指すんだよ。
project propertiesではPIC18F26K22指定してるのに・・・
頭おかしくなったかな
50774ワット発電中さん:2012/02/20(月) 07:46:12.46 ID:GLHCVXeT
Lチカ?
51774ワット発電中さん:2012/02/20(月) 15:48:28.24 ID:GXq0oRpF
この板で活気がある方なのがこのスレか? 前は人多すぎだったのになぁ。 電子工作もいよいよ終わりか?
52774ワット発電中さん:2012/02/20(月) 15:58:11.92 ID:CxYreY36
ぶっちゃけ何を語ればいいのよここで
53774ワット発電中さん:2012/02/20(月) 17:37:52.24 ID:ynLNphqP
>>52
バカダナァ
ライターダロ
ライター自慢

オレ3台アルヨ
54774ワット発電中さん:2012/02/20(月) 17:47:23.89 ID:oUg861WJ
最低限USBで繋がらないと話にならぬわ
それか無線
なんでAndroidってあんなに糞なんだろ
元がlinuxだからだよな
55774ワット発電中さん:2012/02/20(月) 17:55:25.86 ID:oUg861WJ
無線はXBeeでさえ高いのにマイコ尿BTは高すぎる
USBホストになってPC用ドングルを使うしかない
アホすぐる嫌な世の中やのう
56774ワット発電中さん:2012/02/20(月) 17:57:15.46 ID:CxYreY36
>>53そうか分かった

俺の初代ライタはWIN98とプリンタポートに接続して使うトラ技の記事にあった回路だ
ライタソフトは誰かが作ったPIC16F877まで対応したやつ

俺の2代目ライタはPIC16F877にRAMをI/O増設してハイパーターミナルの「テキストファイルの送信」で
インテルHEXファイルを丸々転送する方式のやつだ PIC16F887にも書き込める

俺の3代目ライタはAVRマイコン用で PIC16F887にRAMをI/O増設してハイパーターミナルの「テキストファイルの送信」で
インテルHEXファイルを丸々転送する方式のやつだ ATMEGA644Pとかに書き込める

俺の4代目ライタはPIC/AVR兼用で ATMEGA644PにRAMをI/O増設してハイパーターミナルの「テキストファイルの送信」で
インテルHEXファイルを丸々転送する方式のやつだ PIC16F887とかATMEGA644Pとかに書き込める

以上だ
57774ワット発電中さん:2012/02/20(月) 18:02:13.21 ID:oUg861WJ
じゃあこんどは無線で作れや
線がないってのはいい
アバターみたいなのどぼとけ通信がいい
58774ワット発電中さん:2012/02/20(月) 18:04:52.90 ID:CxYreY36
5代目はPICKIT3にするよ
59774ワット発電中さん:2012/02/20(月) 18:08:04.07 ID:oUg861WJ
リモコンなら赤外線だろ、という一般常識をかなぐり捨てBTを組み込んだ
ウィーには先見性があった
そういう発想力(ぢから)が必要なのだ
60774ワット発電中さん:2012/02/20(月) 18:21:19.52 ID:oUg861WJ
アイフォーンの成功もそうだ
たっちぱねるぅ?どうせ・・・というこれまでの偏見を、
マルチタッチや精度の高いパネルで覆した
そして数々の特許
しょぼい既製品パネルを流用するだけのPalmや
PDAの世代ではとうてい無理だったことだ
61774ワット発電中さん:2012/02/20(月) 18:31:39.57 ID:oUg861WJ
つまりマイコンの開発も、常識を捨てて挑まなければ成功はない
常識は邪魔をする、あいつ狂ってるぐらいの認識で調度いいかもしれない
頭を壁にぶつけるなりするのは常識的に考えて危険な行為だが、
もしかするとやってみる価値はあるかもしれない
62774ワット発電中さん:2012/02/20(月) 18:45:57.50 ID:oUg861WJ
アバターの車椅子男がパンドラに到着直後、
運搬車に轢かれそうになっていたのを覚えているだろうか
ギリギリ轢かれはしなかったが、優秀な運転手なのか、
それとも優秀な運搬車なのか、どんな技術かを問わせる
描写をさらっと入れるセンスは見習いたいものだ
もし轢かれていたら障害者虐待映画として見られるのだ
監督がバーホーベンなら躊躇なく轢くだろうが
63774ワット発電中さん:2012/02/20(月) 18:53:05.86 ID:oUg861WJ
少し話が脱線したが、要するに魅せる技術の事を言いたいのだ
アイフォーンは魅せる技術も巧みだった
だから皆が注目した
ちまちまPICで・・・なんて考えてる時点でお前はダメなんだよ!
まず「PICで」という考えは捨てろ
64774ワット発電中さん:2012/02/20(月) 19:16:02.36 ID:mAgXXJq+
>>63
少し落ち着けよw
その時点でスレチって事に気付かない?
65774ワット発電中さん:2012/02/20(月) 19:33:12.13 ID:OoUDicG1
とっくにあぼーん設定してます
66774ワット発電中さん:2012/02/20(月) 19:33:38.17 ID:oUg861WJ
ぶっちゃけ何を語ればいいのよここで
という流れったから
ここの住人に少し説教したかった

スレチですか?
ではどうぞPICにちなんだお話をなさってくださいなw
67774ワット発電中さん:2012/02/20(月) 19:34:13.44 ID:40hewJ7M
手持ちで8bitポート、タイマ用外部オシレータ、PWM 2chのたった計12pinを同時に使える品種がない
リマップ可能な18F26J50買うしかないかね
もしくは2チップ構成にするか…
68774ワット発電中さん:2012/02/20(月) 20:53:52.00 ID:UONKmIO/
49だけど、MPLABのバグっぽい。
view include hierarchyではpic18f26k22.hをインクルードしているのにgo to implementationではpic18f87k22.hをさしてるし、対象を兄弟チップに変えたらエラーが無くなった。
秋月で扱いだしたので買ってみたけど、このチップに絡むコンパイラのバグはいくつか報告されているので、地雷なのかもしれない。
以上ですー
69774ワット発電中さん:2012/02/20(月) 21:50:15.98 ID:xi5q/yrR
インクルードの順番が違うってことはないよね
70774ワット発電中さん:2012/02/21(火) 01:21:51.04 ID:07qa1lC6
外部オシレータからPIC2つに同時にクロック与えてデュアルPICとか考えてる。
上手くいけば8bitPICで16ポート同時に操作できる、かも。
71774ワット発電中さん:2012/02/21(火) 01:54:14.33 ID:FKK/yPaJ
>70
何に使うのかわからないけど、マスター・スレーブ決めて通信やSYNCで2つの同期とか取るのかな
そんなにシビアでもなく同じクロックでそれぞれのPICが勝手に動く感じ?
72774ワット発電中さん:2012/02/21(火) 11:59:23.44 ID:W5PkUdBM
3個同時に走らせて多数決で出力するのがカッコイイだろ
73774ワット発電中さん:2012/02/21(火) 12:40:52.55 ID:cFqGRmZB
>>70
リセットが同期出来ないので難しくないかな?
74774ワット発電中さん:2012/02/21(火) 14:47:13.44 ID:ObXiIULr
>>72
それなんてエヴァ
75774ワット発電中さん:2012/02/21(火) 14:55:05.05 ID:L/HeKT27
多数決コンピュータといって、アポロじゃなくてエヴァが出てくるってのは…時代か…
76774ワット発電中さん:2012/02/21(火) 15:58:07.09 ID:9NoJH+dk
同期信号出すならそれで校正すりゃいい
両方に外部オシレーターのピン割くなんてもったいにゃい
77774ワット発電中さん:2012/02/21(火) 18:05:15.49 ID:Zzh0mZIG
>>72
3個位じゃ全部違ってる可能性があるから数百個でよろ
78774ワット発電中さん:2012/02/21(火) 18:14:56.14 ID:L/HeKT27
>>77
二択だから3つで多数決できるわけで…
数百個要るってことは、数百通りの答えを出させる気か。 PICにか。
79774ワット発電中さん:2012/02/21(火) 18:19:49.98 ID:kIgq/FpE
なんかジグビーとかいう無線通信のやつを7個貰ったんだけどなにすればいいかわからない
80774ワット発電中さん:2012/02/21(火) 18:46:06.09 ID:BE+qGuJS
>>79
福島原発でリモコン線が引っ掛かって放置されてる物よりマシな
ものが出来るかも知れない。
http://www.youtube.com/watch?v=-YDgNd6BSwI
AVRでも出来るからPICでも出来るんじゃない?
8170:2012/02/21(火) 19:09:49.81 ID:07qa1lC6
似た様な記事見つからなかったので、ちょっとだけ。

同時起動に関してはちょっと怪しかった、初期起動はとりあえずリセットで無理やり。
どっちにしろ選別して銅の板でも貼っとけばいいかなあ。ちゃんと波形見てないからまだわからないよ。

マスタにタイミング持たせてスレーブにポート割り込みして、互いにタイミングを取ればいけるかな、とかその程度しか考えてない。
物凄く頭悪い方法だと思うよ、自分でも。16ポート同時操作できるマイコンがあればこんなことするよりそっち使ったほうがいい。
82774ワット発電中さん:2012/02/21(火) 19:13:18.88 ID:ep5eAL7N
高速動作を要求しなければ不可能な話ではないと思う。
でも、一番最初に採るアプローチ手法でもないなぁ。
83774ワット発電中さん:2012/02/21(火) 19:19:45.50 ID:80sT7eo+
8bit→16bit変換ならラッチ等のロジック回路を外付けするのがいいんじゃないかな
84774ワット発電中さん:2012/02/21(火) 19:38:24.99 ID:W5PkUdBM
I/Oエキスパンダってのもあるし
バタついていいなら4040でもおk
85774ワット発電中さん:2012/02/21(火) 19:40:28.73 ID:FtTkiKem
>81
素直に16bitのPIC24F使うのが楽じゃないか
秋月で\330のPIC24FJ64GA002ならRB0〜15の16bit操作可能のはず
ただしリマップ機能はRBにしかないので残ったRA0〜4で内蔵モジュールは
全く使えないけど。
8670:2012/02/21(火) 20:47:50.51 ID:07qa1lC6
だよねー。
手持ちでそこそこの速度で動かすには、ってことで考えてただけだからね。
87774ワット発電中さん:2012/02/21(火) 21:35:28.65 ID:ZbVHOVZi
10f32xってどうよ
88774ワット発電中さん:2012/02/21(火) 21:35:29.83 ID:80sT7eo+
同一クロックを使って2個のPIC動かしても
命令サイクルは揃わないんじゃねえの?
89774ワット発電中さん:2012/02/21(火) 23:14:06.43 ID:yxU5tdz7
>>76
1ピンでクロックとリセットタイミングを同期なんてできないでしょう

外部オシレーターの2ピンと同期用の1ピンの計3ピンを使わないと完全な同期は無理なんじゃないの
90774ワット発電中さん:2012/02/21(火) 23:56:38.98 ID:FtTkiKem
リセット前後は超低速なクロック(10Hzとか)を与えてバラつきを抑え
起動した位でクロックを通常に戻せば複数で同期できないかな。
91774ワット発電中さん:2012/02/22(水) 00:24:27.90 ID:DttA2rTh
>>89
そんなことない
アプリケーションノートにもあった
92774ワット発電中さん:2012/02/22(水) 00:25:47.50 ID:DttA2rTh
>>87
苺にボード付きで売ってるけど試したら良かったよ
93774ワット発電中さん:2012/02/22(水) 01:10:27.48 ID:RyatnWbY
たとえ同じクロックソースから動かしても1命令サイクルは4クロックだから
複数のPICの命令サイクルのスタートを確実に揃えるのは無理でしょ
94774ワット発電中さん:2012/02/22(水) 03:21:49.74 ID:yg6LDzCy
>>91
AN番号教えて
95774ワット発電中さん:2012/02/22(水) 07:32:05.40 ID:uqqla31b
2つのCPUを同期させるならクロックを共通にしてリセットもクロックに同期
させればできる。あと、I/O入力もクロックに同期させてからPICに入れない
とだめ。
96774ワット発電中さん:2012/02/22(水) 07:50:33.81 ID:yg6LDzCy
>>95
>>76はデタラメだよね
内部RC発振じゃ絶対無理だよね
97774ワット発電中さん:2012/02/22(水) 16:04:22.89 ID:UlfU/KO6
16F688は入門者には最適です。14ピンという数が絶妙でこれでかなりのものができます。
しかし、アセンブラ言語によるプログラムがサイトに見あたりません。
そこで自分でブログを作ってプログラム公開しました。まだ数が少ないけどね。

よかったらどうぞ。超かんたんなプログラムしかないからね。
http://seclus4.blog.fc2.com/
98774ワット発電中さん:2012/02/22(水) 17:26:13.46 ID:LwgXj72U
ちょっと質問。
1msのインタバルタイマを作りたいとき、クロックソースが1MHzとしてCCPRの設定は1000とするのが正解なのか999とするのが正解なのか?
H8系は999が正解なのだが、PICは違う気がしてきた。
まだ基板が出来上がってないので実験出来ませぬ。
99774ワット発電中さん:2012/02/22(水) 17:34:34.88 ID:MTFkNZcn
データシートひっくり返さないと断定できないけど-1だった気がする(ちがったらすまん)。
100774ワット発電中さん:2012/02/22(水) 18:05:08.41 ID:qNL66yNF
>98
-1の999。
16F877Aで昔 作った時計のソースが 12.8MHzをプリスケーラ1:8で
CCPR1H に 156 , CCPR1L に 63 (156*256+63=39999)設定で
ちょうど1/10秒割込みできてる
確か、MPLABのSIMだとバグっていたのか40000でちょうど良い
値なのに、実機で動かすとどんどんずれて困った覚えが
101774ワット発電中さん:2012/02/23(木) 00:38:10.49 ID:bV8rUq66
全くの初心者だが、MIDI入力からの音程をその周波数に対応したパルス間隔(矩形波)に変えて4つ出力するにはどのチップが最適ですかね。
膨大なマイコンの中から性能のどの点を見て適するものを選んでいくかという過程が知りたいです。
お願いします。
102774ワット発電中さん:2012/02/23(木) 00:45:21.19 ID:0W/I6fnc
>>101
>全くの初心者だが、MIDI入力からの音程をその周波数に対応したパルス間隔(矩形波)に変えて4つ出力するにはどのチップが最適ですかね。

一番安い奴。
103774ワット発電中さん:2012/02/23(木) 00:56:36.59 ID:BFeVbasQ
いや、2番目に安いほうがいいと思う
104774ワット発電中さん:2012/02/23(木) 01:26:27.46 ID:42IjrW4Q
ぜんぜんわからんw
105774ワット発電中さん:2012/02/23(木) 01:49:05.72 ID:j0jXPXxf
>>100
何か似たのを読んだことがあるなと思えば同じ事が起きていた。
ttp://airvariable.bbs.fc2.com/?act=reply&tid=4520156#10458256
マイナス1で実際ちょうどよくて、MPSIMはそのままであたかも正常のふるまい。
106774ワット発電中さん:2012/02/23(木) 08:10:15.85 ID:1zWetewG
>>101
まず、MIDI入力を処理するのにUARTがあると便利。
つぎに、矩形波を4つ出力するために、波形出力機能の付いた16ビットタイマーが4本あると便利。
なので、秋月で売っいるマイコンだとSH7125とかRX621みたいな、1000円弱のやつが16ビットタイマーをたくさん持っているのでプログラムが簡単。

出力する矩形波の周波数が数十キロヘルツ程度の低い周波数なら、16ビットタイマー1本を使って、ソフトウェアで波形出力するのもいいでしょう。
その場合なら、UART付きのマイコンならどれでもいい。100円くらい。
107774ワット発電中さん:2012/02/23(木) 09:28:37.16 ID:IBhrtmuX
初心者なら評価キットの様なマイコンボードで試作してからチップの選定やハードウェア設計。
評価キット(学習ボード)は何回でも再利用出来るので試作に便利ですよ。
108774ワット発電中さん:2012/02/23(木) 10:29:53.12 ID:DzkaDTUQ
PICで >>80みたいなXBeeを使ったラジコンやってる人いる?
109774ワット発電中さん:2012/02/23(木) 12:11:27.02 ID:z6bAlI6n
MIDIってまだ31250や38400bpsなのかな
全くの初心者ならArduinoがいいんじゃないの
似たような作例も多そうだし
Arduino MIDIでぐぐってごらん
110774ワット発電中さん:2012/02/23(木) 12:51:46.15 ID:gSt876QS
アルデーノは、そんなにいいですか?
111774ワット発電中さん:2012/02/23(木) 12:56:19.82 ID:z6bAlI6n
Arduino MIDIでぐぐれと言えるところがいい
もちろん、PIC MIDIでぐぐれとも言えるわけだが、
全くの初心者相手なら自重しようという気持ちにもなるわけだよ
112774ワット発電中さん:2012/02/23(木) 13:19:18.68 ID:xvdlhLYY
>>99-100
ありがとうありがとう。

ついでにもう一つ。
PWMを10ビット分解能で使う(PR2がffH)とき、
デューティ設定3ffHは100%?それとも99.9%くらい?
デューティ設定0は0%? それとも0.1%くらい?
0%デューティと100%デューティのどちらか、あるいは両方とも
例外処理としなければならないのかなという質問。

アートワーク終わってから装置の仕様が若干変わって、
回路図まで逆戻りでござる。
113774ワット発電中さん:2012/02/23(木) 13:21:31.22 ID:lOePDxdA
汚いニーモニックだなぁ
114774ワット発電中さん:2012/02/23(木) 13:25:58.27 ID:IBhrtmuX
>>112
その調子ならどうせ改版を繰り返すので試作機をオシロで測ってから対策
115774ワット発電中さん:2012/02/23(木) 14:04:48.08 ID:tmNH+oWB
>>112
データシート読め
116774ワット発電中さん:2012/02/23(木) 14:31:46.31 ID:uqbQOfg8
たしかAVRのPWMだt、、ここPIC専用か
117774ワット発電中さん:2012/02/23(木) 20:10:32.15 ID:069rm8nZ
>112
PWMで0%はできるけど100%は無理だったはず。
datasheetでも周期が
(PR2+1)*4 *Tosc*TMR2PR
パルス幅が
(CCPR1L : CCP1CON<5:4>) *Tosc*TMR2PR
なので
PR2=0xFF=255 , (CCPR1L : CCP1CON<5:4>) =0x3FF=1023 に設定しても
1023/((255+1)*4)≒99.9%

118774ワット発電中さん:2012/02/23(木) 21:18:35.70 ID:c3+vGp/E
質問ですがアセンブリ言語とC言語で同じ処理をさせた場合
実行速度って変わってきますか?
体感的には分からなくてもマイクロ単位で見た場合アセンブリ言語のほうが早いとかあるのでしょうか?
119774ワット発電中さん:2012/02/23(木) 21:24:49.84 ID:1zWetewG
変わる場合もあるし、変わらない場合もある。アセンブラのほうが遅い場合もある。
実際にコードを書いて、シミュレータで速度を比較してみたらいいよ。
120774ワット発電中さん:2012/02/23(木) 21:43:56.33 ID:0W/I6fnc
>アセンブラのほうが遅い場合もある。

それはないだろ。
121774ワット発電中さん:2012/02/23(木) 22:00:09.28 ID:PrMb8U9O
規模のデカいマイコンだと、アセンブラで書くと毎回予測分岐失敗するとかで、
コンパイラの最適化のほうが強い場合があるらしいが
PICでそんなことがあるのか? という話だな
122774ワット発電中さん:2012/02/23(木) 22:10:24.87 ID:lOePDxdA
カンニングできるしCじゃ書けない最適化もできるし
どこを省いていいか分かるのは書いた本人だけだし
123774ワット発電中さん:2012/02/23(木) 22:20:58.03 ID:lkifK8UT
>>121
簡単な構造のPICでそんなことは絶対にない
アセンブラはわざと回り道するように書かない限りC言語で書くより速い
124774ワット発電中さん:2012/02/23(木) 23:12:46.48 ID:IBhrtmuX
>>123
コードを短く見やすく書くとアセンブラは思うほど速くない。
例えばCで速度重視の最適化をするとswich文はコンペア、ジャンプの固まりに展開される。
アセンブラだとコンペア値と処理ルーチンアドレスのテーブルを作って参照ループにするほうがコードが短くなってメンテナンス性もいいしデバッグが楽なので良くやる手法だがベタ展開よりは遅い。
割り込みルーチンとかの速度重視の部分はコードが汚くなってもジャンプを減らしたりメモリーアクセスを効率的に配置したりするのでC言語よりも速い。
125774ワット発電中さん:2012/02/23(木) 23:27:31.53 ID:0W/I6fnc
>>124
>コードを短く見やすく書くとアセンブラは思うほど速くない。

簡潔に見易く書くのも、可読性捨ててでも速度を重視するのも、どっちらにも
プラグラマの判断で対応できるのがアセンブラだろう。何言ってんの?
126774ワット発電中さん:2012/02/23(木) 23:35:21.41 ID:czO4xTmw
>>125
そういう説明を書いたつもりなんだが、、、、
127774ワット発電中さん:2012/02/23(木) 23:37:50.96 ID:czO4xTmw
↑id変わったみたい
124です
128774ワット発電中さん:2012/02/24(金) 00:53:49.95 ID:dN4u/R2e
>124
>アセンブラだとコンペア値と処理ルーチンアドレスのテーブルを作って参照ループにするほうがコードが短くなってメンテナンス性
実際 PIC16Fのアセンブラでどんな処理ルーチンになるの?
129774ワット発電中さん:2012/02/24(金) 10:40:11.63 ID:KD/qbK7j
>>117
ありがとうありがとう。

心置きなく例外処理を追加できます。

>>114
最終ユーザーから一番遠い位置に居るので
話も遠い、遠い。
基板にはユニバーサル用の穴が空いていたりします。
もちろん、出来上がったらオシロで計測確認しますよ。


とか書いてる間に「中断せよ」の連絡が!
仕様が全然違うらしいぞな!
今選択しているCPUじゃ無理かも・・・

なんか、こんな感じ?
http://katada.jp/blog/images/07/06/20040516.gif
130774ワット発電中さん:2012/02/24(金) 12:11:11.84 ID:fxhRC6qJ
>>129
懐かしい画像
131774ワット発電中さん:2012/02/24(金) 13:43:36.18 ID:eEW3asJH
>>129
この前C言語スレで見たわそれ
132774ワット発電中さん:2012/02/24(金) 14:31:09.99 ID:2o1gzcHf
積算温度計を作ろうと思っているのですが、
A/Dで取る温度センサーと1-wireとでお勧めは?
1-wireだと通信が面倒そうだしA/D入力だと基準電圧や調整が面倒かな
133774ワット発電中さん:2012/02/24(金) 14:35:24.58 ID:MaDXGb90
>>132
積算温度計って、何?
温度を積算するの?
134774ワット発電中さん:2012/02/24(金) 14:42:22.62 ID:zFQbzXze
桜の開花時期や、杉花粉の飛散開始時期などは
あるタイミングからの積算温度で予測できるようだから、
そういうのに使いたいんじゃマイカ。
135774ワット発電中さん:2012/02/24(金) 14:43:14.10 ID:k7KgvuGF
積算温度が一定レベルに達するとサクラの花が咲くとか
イチゴの花が咲くとかじゃないの
136774ワット発電中さん:2012/02/24(金) 14:43:23.60 ID:nN0K2h3M
そもそも↓これが一番面倒ではw

>積算温度計を作ろうと思っているのですが
137774ワット発電中さん:2012/02/24(金) 14:43:59.53 ID:k7KgvuGF
積算するだけじゃん
138774ワット発電中さん:2012/02/24(金) 14:44:26.25 ID:OuNLOjxG
面倒ならやめてしまえばよい

市販のロガーでも買えば?
139774ワット発電中さん:2012/02/24(金) 15:21:54.47 ID:2o1gzcHf
>>138
ロガーではパソコンに取り込まないと積算できないでしょ
電池で動く小さいのを作りたい。
例えばスイカなら開花から1日平均温度が20度以上の日を足して1000度で食べ頃
種もみなら15度から20度の範囲で積算100度で芽が出る
140774ワット発電中さん:2012/02/24(金) 15:35:03.37 ID:k7KgvuGF
A/DならLM35DZでダメな理由はないのでは
その用途では1wireよりはI2Cインターフェースの温度センサのほうが簡単で良いのではないか
とかですかね
141774ワット発電中さん:2012/02/24(金) 16:44:22.06 ID:2o1gzcHf
>>140
i2cにしました。LM92。
ありがとう
142774ワット発電中さん:2012/02/25(土) 05:45:12.10 ID:c/5Iw//r
イマダニアセンブラ虫が沢山
オモシレ
143774ワット発電中さん:2012/02/25(土) 17:47:39.29 ID:sZjkP79W
デバッグモードで書きこもうとすると
The following memory regions failed to program correctly:
Debug Executive
Programming failed
と表示されて書き込めないのだが、これの原因って何?
環境はPickit3と30F2020
プログラムモードだと普通に書き込める
MPLABは最新の8.84
Pickit3のファーム更新もやった
144774ワット発電中さん:2012/02/25(土) 22:41:09.48 ID:SRa3WkHc
>>143
プログラムが大きくなって、Debug Executive が使うメモリが足りないのでは?
145774ワット発電中さん:2012/02/26(日) 02:39:07.65 ID:DxQDrANm

PORTA,4のスイッチは内部プルアップされています。そのスイッチを長く押す場合(一秒以上)
と短く押す場合で二つのプログラムを選択したいと言うことで

MAIN
SLEEP
GOTO MAIN
INTR  ;割り込み発生
CALL TIME1S ;1秒待つ
BTFSC PORTA,4 ;1秒後も押されているかかどうか調べる
GOTO A_PGM
GOTO B_PGM
A_PGM
BSF PORTC,1
CALL TIME1S ;1秒待つ
BCF PORTC,1
BCF INTCON,RAIF
RETFIE
B_PGM
BSF PORTC,3
CALL TIME1S ;1秒待つ
BCF PORTC,3
BCF INTCON,RAIF
RETFIE

ところが、うまくいきません。
短押しの場合>A_PGMが実行される
長押しの場合>B_PGMが実行され、その後なぜかA_PGMも実行される
なぜ長押しするとAとBのふたつのプログラムが実行されるのか理由わかりますか?
146774ワット発電中さん:2012/02/26(日) 02:42:50.11 ID:DxQDrANm
>>145
うわ、余白がなくなってる。書き直しますので忘れてください。
147774ワット発電中さん:2012/02/26(日) 03:07:34.81 ID:YdDAz0iy
夜更かしするからそんな事で悩む
寝ろ
俺も寝る
148774ワット発電中さん:2012/02/26(日) 03:07:47.03 ID:LA18rHay
余白 → TAB ね
149774ワット発電中さん:2012/02/26(日) 07:33:14.42 ID:srdiN5an
>>145
プログラムゃんと読んでないけど
チャタリングじゃないの?
150774ワット発電中さん:2012/02/26(日) 09:41:57.47 ID:rhYQCvdG
秋月から切手サイズの PIC18F14K50使用USB対応超小型マイコンボード
なんてのが出てる \800
ttp://akizukidenshi.com/catalog/g/gK-05499/

説明書の回路図でVUSB(内蔵3.3Vレギュレータ出力,耐圧4V)が5Vにつながっていて
これは回路図の誤植か、本当に回路が間違っているのか?
151774ワット発電中さん:2012/02/26(日) 09:50:16.83 ID:Vfc70MqG
長押しで信号offする前に手を離すと大丈夫じゃない?
そうなるならば、 割り込み解除で、まだ押されていたら再度割り込みが入るからかな
152774ワット発電中さん:2012/02/26(日) 10:11:10.21 ID:rhYQCvdG
>145
短押しと長押し区別したいなら、1秒後に確認じゃなくて
押してから離すまでの時間で区別した方が良いと思う。
0 割込み発生(押し)
1 カウンタクリア
2 適度にWAIT
3 カウントアップ
4 SW押されたまま →2へ
5 カウント値で判断
とか
153774ワット発電中さん:2012/02/26(日) 12:57:53.16 ID:8YMPZNHh
>>150
速報。
回路間違い。現物はVusbはVddと切れている。
ソースはツイッター。
154774ワット発電中さん:2012/02/26(日) 13:41:52.57 ID:0TO+u+cv
>>152
押して離すと反応するSWは個人的に嫌い。
同じSWでも離した時に反応する様に使うと痛みが早いのは押した時に反応がない為に人は無意識に押す力が大きくなる
155774ワット発電中さん:2012/02/26(日) 14:08:41.74 ID:LA18rHay
>>153
>回路間違い。
もっと正確に言おうよ。

   回路図 なのか 現物の回路 なのか

言葉足らずだよ。
156143:2012/02/26(日) 14:32:55.74 ID:vokVD6Ve
>>144
プログラムメモリは1534/4096
データメモリは80/512だからそれはないと思われ
それとデバッグモードに移行した初回だけPK3Err0040が出てた
ヘッダないとデバッグできないってこと?
157774ワット発電中さん:2012/02/26(日) 14:50:54.79 ID:aULAnLf8
>>145
ピン変化割り込みだよね?
だとしたら最初の一秒ウェイトする前に、まず立ち下がりかどうか調べてから、以降の処理をする様にしなきゃいけないと思う。
出ないとスイッチ離したときの立ち上がりを拾うのでは?
158774ワット発電中さん:2012/02/26(日) 18:10:06.26 ID:YdDAz0iy
秋月のUSBのやつは機能制限付きらしい
なんじゃそら
これならAVRの板のがいいな
159774ワット発電中さん:2012/02/26(日) 18:14:31.30 ID:YdDAz0iy
あ、USB-IOとしてじゃなく
普通にファームウェア焼いて使うなら別に問題ないから誤解しないように
160774ワット発電中さん:2012/02/26(日) 18:58:00.49 ID:qAzU6FZp
何の話だ。
161774ワット発電中さん:2012/02/26(日) 19:12:23.38 ID:rhYQCvdG
>154
押した瞬間に反応する様にした場合、どうやって短押しと長押しの区別をつける?
162774ワット発電中さん:2012/02/26(日) 19:15:38.90 ID:iS2mWVFG
一旦、反応してから長尾氏だったら
その反応するしか出来ないぞな
163774ワット発電中さん:2012/02/26(日) 19:25:36.71 ID:srdiN5an
>>159
最初からUSB-IOが焼いてあるの?
164774ワット発電中さん:2012/02/26(日) 19:39:19.98 ID:pZ7PrHps
>>161
早く離したらオフで反応。
長押しされたら離されなくても規定時間で反応。
165774ワット発電中さん:2012/02/26(日) 19:43:34.35 ID:pZ7PrHps
加速系の操作なら押されて直ぐに反応。
そのまま長押しされたら加速。
キーリピートやモーター、時計設定とかはこの手法
166774ワット発電中さん:2012/02/26(日) 21:20:50.78 ID:GrtTQDho
こういうところに出てくるプログラムってdelay関数を使ったようなのばっかり
だな。10ms位のインターバルタイマー割り込み使って、状態遷移としてとらえる
ようなプログラムを見たことない。
167774ワット発電中さん:2012/02/26(日) 21:42:58.32 ID:qAzU6FZp
ポート余ってるんなら1秒の時定数持たせた入力を余分に作って
状態01か11で判断すれば、チャタリング対策にもなって一石二鳥かと。
168774ワット発電中さん:2012/02/26(日) 21:43:20.52 ID:kpSPF/QV
掲示板に書ける行数に限りもあるし仕方ねんじゃね?
169774ワット発電中さん:2012/02/26(日) 22:25:43.83 ID:rhYQCvdG
>166
インターバルタイマー割り込み使う位なら、ピン状態変化割込みで
ONの割込みで内蔵のタイマをクリアだけして戻り、OFFの割込みでタイマ値読んで
判定して各処理実行して戻りの方が無駄な割込み発生せずシンプルと思うけど。

まあマイコンの場合 目的さえ達成できればMPU時間全部使えるんだから
delayでもタイマ割込みでも何の問題も無いけど
170774ワット発電中さん:2012/02/27(月) 00:26:36.77 ID:zP5qf7qu
delayは楽でいいけど、プログラム規模が大きくなるとスパゲティになりやすい
割込みは良くできた機構なので良く理解して多用していきたいと思ってる
171774ワット発電中さん:2012/02/27(月) 00:38:20.19 ID:DhkCB6dD
>>166
素人の最初の一歩としては仕方が無い。
例えば苺で売ってるガイガーも同じだけど、計数するのとBEEPを鳴らすのが同時に出来ないプログラム
だからBEEPを鳴らすと計数値が微妙に減るw
もちろん、そういう素人プログラムだから、BEEP以外にも計数漏れがあるかも知れず値は当てにならない。
172774ワット発電中さん:2012/02/27(月) 02:25:07.06 ID:IEE8WPn8
よくタイマーをフリーランさせてピン変化でカウンタ値を
読み取ったりしてるのがあるけど、それでは発展性がない
ピン変化はスリープから復帰に使ったら停止させて、
後はタイマー1本でいいんだよ
割り込み負荷も一定にできるし
Nchを同時にとかの処理を設計すると自然とそうなる
173774ワット発電中さん:2012/02/27(月) 02:28:41.38 ID:qh6M56Tl
>計数するのとBEEPを鳴らすのが同時に出来ないプログラム

だせぇww

PIC16でタイマ1個でマルチタスクを実現するにはどうすればいいか
1日でいいから真面目に考えるべきだと思うよホント。
一度雛形が出来れば他のマイコンにも応用が利く
174774ワット発電中さん:2012/02/27(月) 04:05:04.21 ID:9jd2mG0d
>>171
苺のガイガーってPICじゃないよ。

技術力ゼロな、苺クレーマーの「℃玄人さん」www
175774ワット発電中さん:2012/02/27(月) 05:39:22.13 ID:itnN58o2
>>156
7.3 TOP 10 REASONS WHY YOU CAN’T DEBUG
コードプロテクトしているとか?
176774ワット発電中さん:2012/02/27(月) 11:51:48.80 ID:W+GTIP9s
>>173
>1日でいいから真面目に考えるべきだと思うよホント。

てか、苺のHP見るとソフトを生業としてるみたいなんで、24時間365日考えているはずなんだけど
お粗末過ぎる現実www
Cしか出来ない奴みたいな愚かさだなw
177774ワット発電中さん:2012/02/27(月) 11:55:23.01 ID:W+GTIP9s
>>174
PICかどうかなんて問題無いし、もし、そんな当たり前のプログラムさえ組めないのが
チップの制約ならPICに変更するべき。
所詮、問題点さえ自分で理解出来ない℃素人って事だよ。
178774ワット発電中さん:2012/02/27(月) 12:16:56.96 ID:F7d6E1MH
>>171
どのような検証をしてそう思った?
上から目線で奴なら検出したらbeepして次の検出待ちするようなシーケンシャルにしているだろうと妄想?
179774ワット発電中さん:2012/02/27(月) 13:24:17.63 ID:yi9B25TC
>>177
なんでPICなんだよ
高級言語に不向きでアセンブラはもっと不向きだぞ
180774ワット発電中さん:2012/02/27(月) 13:31:14.17 ID:NGHtV428
>なんでPICなんだよ
スレタイ
181774ワット発電中さん:2012/02/27(月) 14:17:10.59 ID:W+GTIP9s
>>179
アセンブラに不向きなのはPICでなくて>>179
182774ワット発電中さん:2012/02/27(月) 18:37:15.79 ID:yi9B25TC
>>145を動かすとしたら
割り込みに入った直後は10msくらい待って読み直す。押されていなかったらそのまま戻る、、か
簡単な演習でも割込みをメインループにする発想なんてもうできねぇわ
183774ワット発電中さん:2012/02/27(月) 19:09:49.95 ID:DV6XbVS+
急に内容ガッタガタなスレに成り下がったな。
184774ワット発電中さん:2012/02/27(月) 20:49:32.46 ID:WZs1Rw7Y
そうやって助長する>>183
185774ワット発電中さん:2012/02/27(月) 21:36:43.26 ID:KkzfkXUc
>>183
ゆとり教育の成果のあらわれなのか、どうも最近は、基本的なコトを知ら
ずに電気やソフトいじってる香具師が多い。

まだ個人の趣味ならいいが、それを仕事でやってたりする。
もはや驚きを通り越して怖い。知らないって最強かも。
186774ワット発電中さん:2012/02/27(月) 22:22:07.68 ID:Hz1Af6uJ
悪いロートルは批判と嘆きと細かい事に口を出す。
良いロートルは基本は押さえて放任
187774ワット発電中さん:2012/02/28(火) 01:58:27.61 ID:xEx8sTLK
>177
こんな所にガイガースレの℃玄人が。
くやしいのう。
188774ワット発電中さん:2012/02/28(火) 06:44:57.38 ID:j7STJjXk
歳とると昔から若者の行動を批判する
最近の若いものは、、、
若い人間の行動は社会に依存する
その社会を形成したのは、歳よりの人達
未熟さを批判自慰行為する暇があったら、教育なさい見苦しい

ま、他人を見下す事で己の立ち位置に満足する人間は
技術屋に多い
歳とって時代に取り残され新しい物事を否定批判しているうちに
まわりに誰も居なくなる
そんな人達沢山見てきた

ある意味、そういう醜い姿を正す教育者がその人達にはいなかったわけだ
反面教師也
189774ワット発電中さん:2012/02/28(火) 10:14:17.85 ID:rGpFOvhL
苺には年寄りも若いのにも碌なのがいないって事か
190774ワット発電中さん:2012/02/28(火) 14:47:08.91 ID:YtExHzD/

16F88の場合割り込みピンの選択で INT0IEとRBIEがあります。
INT0IEはRB0ピンだけその他のピンとは独立して使えるようになってます。
なぜRB0ピンだけ独立して使えるようになってるんですか?

191774ワット発電中さん:2012/02/28(火) 17:18:59.58 ID:jHkSvKW1
そのほうが便利だから
192774ワット発電中さん:2012/02/28(火) 17:36:36.49 ID:LbrMQwYM
使い道が違うから
193774ワット発電中さん:2012/02/28(火) 17:49:20.61 ID:NANBCyXB
昔のPICはINT0しかなかった。互換性のために残してる。
今は利便生のためにポート割り込みが実装してある。
194774ワット発電中さん:2012/02/28(火) 19:50:17.35 ID:YtExHzD/
>>192
機能的に違いはあるんでしょうか?
195774ワット発電中さん:2012/02/28(火) 20:40:42.81 ID:J3A2bbp0
シュミット入力かそうでないか
指定エッジのみか、変化したらとにかく割り込み発生するか
196774ワット発電中さん:2012/02/28(火) 21:49:26.93 ID:9vYuoOJT
>>194
INT0IEは別名「外部割り込み」
RBIEは別名「変化割り込み」


外部割り込みは基本的にパルス入力用
1つのピンと1対1で結びついている
シュミットトリガー入力になっている

変化割り込みは一つの割り込みが複数ピンと結びついている
基本的にボタン入力用。スリープ解除用途とかに便利


外部割り込みは「立ち上がりエッジ」もしくは「立下りエッジ」のどちらかのみに反応することができる

変化割り込みは「立ち上がりエッジ」「立下りエッジ」をそもそも区別することができない
どのピンかも区別することができない。実際にポートの値を見る必要がある

変化割り込みで監視されるピンはチップによってはマスクレジスタによってカスタマイズできる
197natu:2012/02/28(火) 22:29:02.00 ID:EPXp/O4G
仕様書から読み取れないので教えてください。dsPIC30F3010です
UARTの送信割り込みで1文字をバッファーに書き込んでtxBuff.writeを+1
した後、IEC0bits.U1TXIE=1をしてます。

void ISR _U1TXInterrupt( void )
{
  if ( txBuff.read == txBuff.write ) {
   IEC0bits.U1TXIE = 0;
  }
  else {
   IFS0bits.U1TXIF = 0;   //これを@の行へ移動するとU1TXIFが出なくなる

   U1TXREG = txBuff.buff[ txBuff.read++ ];
   txBuff.read &= kBuffMask;
  @
  }
}

送信処理が終わってU1TXIF=0が@に有る時は、U1TXIEが1でも割込みが掛からなくなりました。
上記の状態だと正常に動作します。これで安心して良いでしょうか?
198774ワット発電中さん:2012/02/28(火) 23:13:46.36 ID:p33welhb
>>197
ダブルバッファだから書き込んだ瞬間に次の書き込み可能になるからじゃね
199natu:2012/02/28(火) 23:21:31.25 ID:EPXp/O4G
>>198
ありがとう。
そうか、書き込んだ瞬間TXIFが1になるのにプログラムで0に
してしまうと2度とTXIFは、1にならないのか。
「送信できますよ」レベルでセットされないでエッジでセットされるのね。
ありがとう。
200natu:2012/02/28(火) 23:23:42.21 ID:EPXp/O4G
大事な事なので「ありがとう」を2回書きました...
201774ワット発電中さん:2012/02/28(火) 23:36:15.96 ID:YtExHzD/
>>196
サンクス。
202774ワット発電中さん:2012/02/29(水) 00:10:24.54 ID:n1g9lY9b
スレ違いかもしれませんが、下の例のように文字の左側に余白をつくるにはどうすればいいんですか?
Jane Styleで書いてます。

  if ( txBuff.read == txBuff.write ) {  
   IEC0bits.U1TXIE = 0;
203774ワット発電中さん:2012/02/29(水) 00:20:49.49 ID:MR1bvTao
>>202
全角スペースを使う
204774ワット発電中さん:2012/02/29(水) 01:37:38.74 ID:9Z6h0enV
どこの間抜けだ、何でもかんでも答えるんじゃねえ。
205774ワット発電中さん:2012/02/29(水) 01:49:51.98 ID:n1g9lY9b
>>204
スマソ
206774ワット発電中さん:2012/02/29(水) 14:22:19.35 ID:L+6yvzil
基本的にブラウザは空白(0x20 スペース)をサプレスします
よって別の空白(全角)を使えばインデントを入れたコードもちゃんと表示されます
プロ並のスレ住人にも見てもらいやすくなるでしょう

こう書けばスレ的にも良かったのでは?
207774ワット発電中さん:2012/02/29(水) 15:03:02.56 ID:YhuHiGQ8
■マ
■■イ
■■■コ
■■■■ン
208774ワット発電中さん:2012/02/29(水) 16:17:52.22 ID:J/5/mTTC
どっかのソース専用あぷろだを使えば良い話
209774ワット発電中さん:2012/03/01(木) 00:15:32.77 ID:P7pPfwSp
コピペした時に謎のエラーが出るけどな
210774ワット発電中さん:2012/03/01(木) 11:04:35.15 ID:qWfslNsa
ブラウザのテキストボックスで全角スペースの数を調整しても思ったような
表示にならない。Windowsならメモ帳(notopad.exe)で調整してから書き込めば、
うまくいく。
211774ワット発電中さん:2012/03/01(木) 12:02:03.23 ID:P7pPfwSp
そんなもんは各環境のフォント依存だ
212774ワット発電中さん:2012/03/01(木) 18:56:53.03 ID:36wL6lne
上手く表示できてるソースを探して、如何にしてスペースを入れてるかを調べればいいだけ。
2chに貼ること前提なら、AA(アスキーアート)エディタ使えば実表示の確認しながら調整も可能。
その程度の発想すら出てこないのに、なんでこんな板のこんなスレに来てんだか…
213774ワット発電中さん:2012/03/01(木) 21:35:48.00 ID:nMfX/Gt7
>>212
言いたい事はわからんでもないが、別にAAなんぞ知らない住人がこの板にいてもいいんじゃね?
この板の全ての住人が回路図AAスレ住人だったってわけでもないんだしw
214774ワット発電中さん:2012/03/01(木) 22:03:53.51 ID:ybKd3nTm
手書きの図面取り込んでうpしよ!
215774ワット発電中さん:2012/03/01(木) 23:02:02.25 ID:6+Thgj28
ちょっとpicとは直接関係ないんだけど、
if (!(n--)) { 〜
ってどう機能してるの? n=0の場合と同じ?
216natu:2012/03/01(木) 23:13:13.49 ID:lnn4rTeE
>>215
そのまんま、nを評価して0だったらif{ }が実行されるけど、その前にnを-1するでどうよ
こういう質問とは違うのかな?
217774ワット発電中さん:2012/03/01(木) 23:19:17.90 ID:P7pPfwSp
それは--nだ
218774ワット発電中さん:2012/03/01(木) 23:24:21.38 ID:8Bu4xTVg
評価したあとに、-1 か。
評価以外で使わないなら問題ないな。
219215:2012/03/01(木) 23:30:58.84 ID:6+Thgj28
プログラムから察するに、nをマイナスカウントしてってn=0になったら条件分岐って感じなんだよね
書き換える前にデバッグして動きを確かめておくべきだった・・・
220774ワット発電中さん:2012/03/02(金) 08:42:46.89 ID:xJH6D27t
>>219
判定後更新
221774ワット発電中さん:2012/03/02(金) 09:35:41.94 ID:waTv9chj
if(n){
n=n-1
}else{
n=n-1

}

等価コードはこんな感じか
222774ワット発電中さん:2012/03/02(金) 10:22:47.84 ID:AaZGLilQ
>>221
そんな感じだけど
アセンブラに展開されるのは
こんな感じのソースをコンパイルされたコードになる
wkreg=n;
n=n-1;
if(!wkreg)

223774ワット発電中さん:2012/03/03(土) 00:13:46.62 ID:mFnq4hxO
PICKIT3買ったんですが、12F683,12F675が書き込みできないんですけど
なんかの間違いでしょうか。

あとPICKIT3に対応しているPICを調べたいんですがどこに資料ありますか。
224774ワット発電中さん:2012/03/03(土) 00:52:19.63 ID:FmV4JcDj
>>223
既に自身のパソコンの中にあるはずだよ。
ProgramFiles/Microchips/MPLAV IDE/Readmes/DeviceSupport.htmとかに載ってる。
パス名はちゃっちゃっと手雨位置したので、それっぽいフォルダ名を探して。。
表の右端にあるPK3P/PK3Dが該当箇所。マウス合わせると意味がポップアップされる。
225774ワット発電中さん:2012/03/03(土) 00:57:55.60 ID:FmV4JcDj
手雨位置・・・手打ち。。

書き込みできない場合、表示されるメッセージを読むとヒントになる。
ブレボで単独書き込みやってるか、ターゲットに実装した状態で行うのか否か。
ターゲット回路の影響や配線間違ってる?電源供給の設定等、チェックポイントは幾つかあるよ。
シンプルにブレッドボード上に単独書き込み試してみたらどうだろか。。
226774ワット発電中さん:2012/03/03(土) 02:25:03.08 ID:mFnq4hxO
>>224
ありがとうございます。12F683,12F675ともに書き込みできることになってるんですね。
227774ワット発電中さん:2012/03/03(土) 16:09:19.96 ID:9ydcygi/
    
顕正新聞 平成24年2月5日号「原発全廃特集号」

原発は日本を滅ぼす、即時全廃せよ
人のDNAを破壊、国土を居住不能にする
代替は天然ガス・コンバインドサイクルで十分
惨禍もたらすを知って推進するは犯罪

ttp://d.hatena.ne.jp/kensho01/20120208/1328718592
228774ワット発電中さん:2012/03/04(日) 09:40:25.07 ID:SOo39cy6
>>227
×:原発は
○:原子力関連の事故は
229774ワット発電中さん:2012/03/04(日) 12:04:52.02 ID:M4AvtUNd
>>173
三日考えましたがわかりません><
230774ワット発電中さん:2012/03/04(日) 12:49:56.55 ID:tJW6tmZM
ああそれ、ガイガースレの℃玄人ってやつのたわごと。
答えなんか無いよ。
231774ワット発電中さん:2012/03/04(日) 13:29:40.94 ID:qqdiDHYm
並列処理で思い出したが、PICの入門書って、大抵その場待ちでタイミング作るソースが載ってるけど、なんで?
初期のちーさいPICでちーさいプログラムを前提にしてるとかそのへん?
232774ワット発電中さん:2012/03/04(日) 15:47:08.57 ID:HrDFBVe+
スタックねぇからな
233774ワット発電中さん:2012/03/04(日) 17:16:23.85 ID:0lYjb9fa
>231
わかりやすいし、プログラム作るのが楽だからでしょ。
単に1Hzの信号出すだけとかだったら、割込みやCCPを設定して使うより楽だし
234774ワット発電中さん:2012/03/04(日) 19:32:24.87 ID:fe/PsFV3
℃玄人さんならPICなんか使わないでバイポーラのCPUを使いそう。
235774ワット発電中さん:2012/03/04(日) 22:32:40.05 ID:iZW4yVMz
>>231
著者も℃素人なんだろ。
初期のPICは16C54、55だけど、製品にするのにそんな℃素人っぽい組み方した事は無いな。
真面目に設計すればそんな方法で使い物になる筈は無い。
Lチカくらいなら問題ないけどね。
236774ワット発電中さん:2012/03/04(日) 22:47:48.37 ID:moPxVdtU
>>232-235
メーカーの提示した設計思想がそんなんで、著者はそれに従った、とかそんなんでもないのか。
コンパイラに他所では見かけないディレイとかあるし、わりと不思議だったが…
237774ワット発電中さん:2012/03/04(日) 22:49:39.90 ID:Q8p2TrmT
>>235
それって、
後×氏は℃素人
と言ってるのと一緒じゃんw
238774ワット発電中さん:2012/03/04(日) 22:54:17.28 ID:vK7vDLf6
>>235
旧PICは基本多重割り込みできないし、コール・リターンもできないから
適材適所ってことでしかないと思うが…
タイマで待つより、ループで待つほうが簡単だし。
239774ワット発電中さん:2012/03/04(日) 23:12:05.41 ID:nPeLvNgJ
>>235
割込みが無いCPUで割り込みルーチン作るなんてさすが℃玄人さん。
WDTを割り込み替わりに使えない事は無いがベタ書きで対応出来るものをややこしく作る為に時間をかけるのはバカの自己満足
240774ワット発電中さん:2012/03/04(日) 23:12:31.42 ID:0lYjb9fa
>235
入門書に色々詰めん込んでも、初めての人に理解できるわけないだろ。
なんで入門書に、理解しやすいように素人っぽい組み方書かれると非難されるんだ?

おまえの言ってる事って中学生が小学生の教科書みて幼稚だなと著者までバカに
してるのと同じだろ
241774ワット発電中さん:2012/03/05(月) 00:11:22.50 ID:9LJrtQdA
>>236
当時の代理店が言うには簡単なロジックの置き換えとか言ってたな。
でも普通に液晶表示のサイリスタ式PID温調機とか作ってた。
ボタン押してる間、ヒーターがONになりっぱなしなんて
苺のガイガーが、BEEP発生時にカウントしない位恥ずかしいw

>>237
後関本は持ってないから℃素人かどうか俺にはわからんw

>>238
コール、リターンはあったと思うぞ。
ループで待つほうが簡単かどうかは、何を作るかによる。

>>240
素人っぽい組み方じゃ無くて、℃素人の組み方な。
「ぽい」なんてつけると、まるでまともな製品にも同じ組み方のプログラムが
入ってると勘違いする℃素人が出てくるだろ。そんなプログラム組んでるのは
しょっちゅうリセットかかるようないい加減なプログラムをリリースする苺くらいのもんだ。

そもそも入門書だからといって、℃素人の組み方だけでお茶を濁して良い訳無いだろうに。
z80の頃なんかは入門書にもアルゴリズムまで解説してる本があった。 
今の本は殆ど同じ様な横並びで低レベルの内容。℃素人の本を読んだ℃素人が本を書いてるからだろ。
242774ワット発電中さん:2012/03/05(月) 00:16:51.76 ID:9TqlQWRJ
割りとどうでもよいチラシの裏に書いとけって感じの情報だなw
243774ワット発電中さん:2012/03/05(月) 00:19:08.67 ID:9LJrtQdA
>>239
Lチカしかやった事無いくせに、なんでもLチカと同じレベルでしか
考えられない℃素人乙w
℃素人の典型的な例だなwww
244774ワット発電中さん:2012/03/05(月) 00:35:51.31 ID:fEDpCpPl
新しいところに仕事がどんどん取られちゃってるのかな?
245774ワット発電中さん:2012/03/05(月) 00:39:40.60 ID:ue/n/xXB
Lチカって何すかw
そして、Lチカだけがマイコンじゃないんだけどw
246774ワット発電中さん:2012/03/05(月) 01:14:06.45 ID:9LJrtQdA
半年ROMれw
247774ワット発電中さん:2012/03/05(月) 02:27:36.36 ID:uNkWkGgZ
PIC or AVR 今マイコンを始めるならどっち?
http://uni.2ch.net/test/read.cgi/denki/1330880000/l50


よろしければ、どなたか相談にのってください。
最初はこのスレに書こうと思ったのですが、さすがに独り語りが過ぎるような気がしたので、
別のスレを立てました。

AVRスレの人々より、PICスレの人々のほうが、客観的なアドバイスもらえそうなので、
こっちにリンク貼っておきます。
248774ワット発電中さん:2012/03/05(月) 02:32:40.16 ID:ue/n/xXB
>>246
℃玄人さん、あなたがROMることこそ、おそらくみなさんが望んでいることだと感じます
249774ワット発電中さん:2012/03/05(月) 08:56:59.47 ID:ttHr610P
Lチカがわからないならこのスレは不向き。
初心者スレあたりをオヌヌメする
250774ワット発電中さん:2012/03/05(月) 09:15:31.45 ID:cEwIg7N3
【赤青黄】 LED初心者の集うスレ 【フルカラー】
http://uni.2ch.net/test/read.cgi/denki/1318911591/
251774ワット発電中さん:2012/03/05(月) 09:28:42.45 ID:TGFUN6vB
よし、俺はRAMるわ
252774ワット発電中さん:2012/03/05(月) 12:56:47.69 ID:7FB5GZs8
>>249
>Lチカがわからないならこのスレは不向き。
LEDチカチカならわかるけど、
変な省略するからわからないんだよ。

  バカな省略語を使って得意顔するの、やめよう
253774ワット発電中さん:2012/03/05(月) 13:02:33.86 ID:KgWDoWho
>LEDチカチカならわかるけど

wwwwwwwwwwwww
254774ワット発電中さん:2012/03/05(月) 13:22:23.78 ID:9TqlQWRJ
オッサンが寒い略語を使って若者に裏で失笑されているのはよくある例
255774ワット発電中さん:2012/03/05(月) 13:25:01.07 ID:g3mRY3QP
Lチカ…巻き戻ってみたら、1スレに1回出るかどうかだが、けっこー前から出てるね。

割り込み無しで並列動作しようとすると、メインループでカウントして、その数をもとに条件分けして…
すべてのルートがほぼ同じ時間になるようにすれば…

すくなくとも、時間制度なんかどうでもいいって仕様には使えるだろう…
256774ワット発電中さん:2012/03/05(月) 15:00:02.88 ID:ns4TQzCC
そんな事しなくても、タイマーをフリーランで回して、時々確認して良さげなタイミングで
何かする(LEDのOn/Offとか)ようにすれば、割り込み無しでもそこそこの精度出るし
ステップ数える必要も無い
まあ、タイマー使うなら割り込み使った方が楽だけどw
257774ワット発電中さん:2012/03/05(月) 21:31:42.26 ID:5HpTa81K
擬似マルチタスク構造なら割り込みやソフトからのスタック操作は別に必須じゃないもんね
CPUからタイマレジスタ覗けて実行位置や時間を保存しとくRAMがタスク数×2〜3バイトほど空いてれば基本おk
258774ワット発電中さん:2012/03/05(月) 22:20:15.58 ID:wx/UsJyN
Lチカ、デパチ
259774ワット発電中さん:2012/03/05(月) 23:17:52.26 ID:WlJOk2Gt
デパチ。。なんだろう。
260774ワット発電中さん:2012/03/05(月) 23:19:59.27 ID:ue/n/xXB
Lチキなら知ってるw
261774ワット発電中さん:2012/03/05(月) 23:20:10.58 ID:7FB5GZs8
>>258
>デパチ
デジタルパチンコの略ですか?
デジタルパターンチェンジかな。
まったくわからん。
そんな省略語、使うな、ボケ
262774ワット発電中さん:2012/03/05(月) 23:23:49.69 ID:WlJOk2Gt
デジタルでパチパチ入力ってのかなぁ。Lチカが出力の基礎として、入力側の基礎を表現。
いずれにしても紛らわしい。
263774ワット発電中さん:2012/03/05(月) 23:46:35.86 ID:b2xszYMC
デパチ・・・カ?
264774ワット発電中さん:2012/03/06(火) 00:16:45.41 ID:3PMZenaS
疑似マルチタスクならsetjmp,longjmpでできる

//job1,main,job2,main,job1・・・と順番に実行
#include <setjmp.h>
#define TASKS 2
jmp_buf tcbmain[TASKS];
jmp_buf tcbjob[TASKS];
#define task(n,adr) { if( setjmp( tcbmain[n] ) == 0 ) { adr();}}
#define ext(n) { if( setjmp( tcbmain[n] ) == 0 ) { longjmp(tcbjob[n],1);}}
#define DoEvents(n) { if( setjmp( tcbjob[n] ) == 0 ) { longjmp(tcbmain[n],1);}}

void job1()
{
while(1) {
:
DoEvents(0); //タスク切り替え
:
:
}
}

void job2()
{
while(1) {
:
DoEvents(1); //タスク切り替え
:
:
}
}
main()
{
task(0,job1);
task(1,job2);
while(1) {
ext(0); //task1実行
ext(1); //task2実行
}
}
265774ワット発電中さん:2012/03/06(火) 00:28:18.62 ID:rO13jlvZ
ローカル変数は使えない気がする。
266774ワット発電中さん:2012/03/06(火) 00:33:00.06 ID:3PMZenaS
>>265
スタックに入る変数は破壊
267774ワット発電中さん:2012/03/06(火) 01:46:56.93 ID:NUzk73TQ
℃玄人召還呪文としてはよくできてる。
268774ワット発電中さん:2012/03/06(火) 07:13:12.15 ID:GJgvsjKV
>>264
呪文はもういいから、産業で解るように書くか動画でも貼ってくれ。
269774ワット発電中さん:2012/03/06(火) 10:48:47.40 ID:LYSLdaCt
1msインターバルタイマー割り込みからプログラムを周期起動してやれば
スタックを使わずにマルチタスクできる。
20MHzのPICで1msあたり5000ステップ実行できるから余裕。

1ms周期・・・・・A/D変換
10ms周期・・・・LED点滅、キースキャン、タイマー
100ms周期・・・タイマー
1s周期・・・・・・・タイマー
270774ワット発電中さん:2012/03/06(火) 11:31:21.94 ID:tzjsqtTu
>>269
自前で簡単にタイミング作るときはソレが普通なんじゃないの?

割り込み無しって>>239あたりからの流れかな?
まあ割り込みなくてもフリーランタイマーがあれば、空ループで時間切り出しできるけど。
271774ワット発電中さん:2012/03/06(火) 11:38:02.14 ID:3PMZenaS
>>269
順次動作するような制御でタイマーイベントドリブン的な作りは、しんどい。
272774ワット発電中さん:2012/03/06(火) 12:05:21.79 ID:Ean6BLpD
チップは安いんだから
1プロセス1チップでいいよ。
273774ワット発電中さん:2012/03/06(火) 21:03:30.61 ID:02RlSP4n
>>271
逐次やりたいことの後ろに、次にいくかの判定があるのは同じだし、その判定後に毎回抜けるだけでいいんじゃないの?
274774ワット発電中さん:2012/03/06(火) 21:50:32.94 ID:gemO7nlw
>>271
状態遷移で書くのではだめなのでしょうか?
275774ワット発電中さん:2012/03/07(水) 00:18:36.72 ID:Xy7CRO63
>270
割込み無しは >235で16C54,55で"その場待ちでタイミング作る"
素人の組み方した事は無いと豪語する人がいたから。
インスト12bit幅品は
・割込み無し
・スタック2段まで
16C54/55はROM512,RAM24/25
TMR0がある位(オーバーフローしても割込も無いしフラグも立たない)
276774ワット発電中さん:2012/03/07(水) 11:55:28.59 ID:HPUES6qU
連枝のラダーでおk
277774ワット発電中さん:2012/03/07(水) 13:29:54.08 ID:7Y8uAlH7
インスト12bit幅品 って、何?
278774ワット発電中さん:2012/03/07(水) 14:58:00.83 ID:T6lmC5OP
>>277
ベースライン・アーキテクチャ(Baseline Architecture)のことだよ。
プログラム・メモリの幅が12ビットです。
279774ワット発電中さん:2012/03/07(水) 17:05:01.03 ID:T6lmC5OP
>>277
インスト→インストラクションだな。
変な略語より「命令」のほうが短い。
280774ワット発電中さん:2012/03/07(水) 18:29:09.68 ID:I9fG+U+4
死んだと思って数年前からジャンク箱に入っていたPIC12F510
試しに書きこんでみたら正常動作した
当時はなんで書きこめなかったのだろう・・・
281774ワット発電中さん:2012/03/07(水) 18:49:50.43 ID:obJl2zCh
愛だよ愛
282774ワット発電中さん:2012/03/07(水) 23:33:01.01 ID:9SW6wt2j
16F876Aで128x64液晶に24FC256に美咲フォント入れて
やっとShiftJISコード全領域表示できるドライバができた。
これから同期シリアルスレーブで18F4550から制御する。
283774ワット発電中さん:2012/03/07(水) 23:34:53.00 ID:9SW6wt2j
間違い。24fc512だった。
32kBじゃ美咲フォントは入らん。
284774ワット発電中さん:2012/03/09(金) 21:06:06.77 ID:TOy8JfO1
プルアップ抵抗はだいたい10KΩが多いようです。
SLEEPのときの電流をできるだけすくなくするため、プルアップ抵抗を、
1MΩぐらいにするなんてのはどんなもんでしょうか。大きすぎますかね。
285774ワット発電中さん:2012/03/09(金) 21:07:15.73 ID:uUASTmQ1
止まってる時、励磁電流が流れてモーターも熱くなるし電気ももったいないから
励磁をストップさせようと思ってプログラム変更したら最初の1回は動くんだけど
その後動かなくなって、何が悪いのかなあと思って調べたら
ビットの順番をファーストMSBとファーストLSBを逆に考えてて
思いっきりHブリッジでショートさせてたわ
多分、電源電圧が下がった瞬間にブラウンアウトリセットが掛かって
ポートがLOWになるからそれでショートするのが一瞬だけで済んでたんだと思う
ヤバかったよ、まったく
電流が上のトランジスタから下のトランジスタに一直線に抜けてショートしてたんだから
286774ワット発電中さん:2012/03/09(金) 21:09:49.03 ID:lxOJrCJB
>>284
あげて100kだと思う
287774ワット発電中さん:2012/03/09(金) 21:47:26.64 ID:T9Zx6rSb
>284
ピンをアナログ入力設定にしておくと消費電力が少ないとどこかで読んだ覚えがある。
そのピン入力でスリープから復帰するなら使えないけど。
288774ワット発電中さん:2012/03/09(金) 22:37:09.76 ID:CakwK1Ec
>>284
Sleep中に電流が流れてないなら10Kでもいいんじゃね
289774ワット発電中さん:2012/03/09(金) 23:24:02.37 ID:7fqnDTR3
>284
そういう感覚は大事にしたほうがいい。
洩れ電流によってHになるべき電位が想定外に下がってしまうということの他に、

出力A → プルアップ → 入力B

で、AがLからZに切り替わった時、B端でラインがHになるまでに時間がかかるようになる。

プルアップ抵抗 1MΩ × Bの入力容量 10pF

とみると 10us位のオーダーで信号が鈍って立ち上がってくる訳で
1MHz位で動いてると遅延が気になり出す頃合。
290774ワット発電中さん:2012/03/10(土) 00:15:35.65 ID:nbA26BCQ
>>284
Sleep中って、どの経路で電流が流れるの?

pull-up抵抗1Mでもいいけど、ノイズにとても弱くなるのは自明。
そういうときは、1Mにパラに「10kにCの直列」を付ける。
ダイナミックには10kで、staticには1Mとなる。

Sleep中って、ポートの入力インピーダンスが下がるの?
291774ワット発電中さん:2012/03/10(土) 00:29:01.06 ID:1O2n7DDH
sleep時のポート設定によるよね多分
基本入力にしておくかHiZにしておけば、マイコンへの流入は
小さくできるはずだけど

ポートによっては、sleep時強制L出力になったりするやつもあるから
そういうのは注意だろうけど
292774ワット発電中さん:2012/03/10(土) 00:56:17.16 ID:nbA26BCQ
だよね。
sleepに入る前にdirを適当に変えておけば、何か対策できるような気もする。
ただ、出力をHi-Zにしてしまうと、出力機器が動作したりして危険。
安易にpull-up抵抗を上げるワケにはいかないと思うけどなぁ。

スイッチとかエンコーダーなど、自分だけの範疇での機器なら、
pull-up抵抗のcommonそのものを自分のポートでon/offして、電気をケチるのは
見たことがある。
293774ワット発電中さん:2012/03/10(土) 01:25:00.10 ID:lJCGpnt/
何を作ってるのかは知らないけど、プルアップ電流を気にするくらいだから電池電源だろうか。
必要な駆動時間を電池容量と消費電流から計算するのが先では。
ノイズの影響を無視できそうな上限が大体100KΩくらい。
しかし単三アルカリ2本で電圧を3Vとすると10KΩ1本だと4000時間以上持つ計算になる。
294774ワット発電中さん:2012/03/10(土) 01:26:50.90 ID:ph7bi7fV
sleep時の消費電力下げる努力をしたことあるけど、PIC12F1822は結構電流流れるんだよな。
使い勝手のいい石なのに。
PIC12LF1822なら消費電力下がるんだが、電源に5V使えないのが悩ましい。
295774ワット発電中さん:2012/03/10(土) 05:05:26.62 ID:zeOyRHRw
PICって、入力がTTLということになっているけれど、あれって、thresholdが1V
付近と言うことだけなのかな。
もし厳密な意味でTTL入力なのであれば、プルアップ抵抗に10kΩより大きなものを
入れると、誤作動する可能性が在ると思うけれど。

内部プルアップ抵抗を使っておいて、sleep時にそれをオフにするのでは駄目なの?
296774ワット発電中さん:2012/03/10(土) 05:52:05.70 ID:aJeA0LG5
PICに限らすCMOSの素子で入力がTTLコンパチといったら、スレッショルドが
TTLと同等ということ。
VIL=0.8Vなのにスレッショルドが1Vってあり得ない。1.4V位でしょ。
297774ワット発電中さん:2012/03/10(土) 06:09:09.70 ID:zeOyRHRw
データシートによると、VIL=0.8Vの規定は4.5<VDD<5.5の場合で、2.0<VDD<4.5の場合は0.15VDDらしいよ。
5Vで使うときのtypicalなthresholdは、1.1Vぐらいだそうな。で、1V「付近」と書いたのだけど。

それより、「PICに限らすCMOSの素子で入力がTTLコンパチといったら…」ここの部分、
これが本当なのかどうかと言うことなんだけど。どこかに書いてある?
298774ワット発電中さん:2012/03/10(土) 06:22:21.32 ID:zeOyRHRw
そっか、Input Leakage CurrentがMax±1μAだから、CMOS並という解釈で良いのか。
スマン、お騒がせした。
299774ワット発電中さん:2012/03/10(土) 11:28:05.62 ID:9I304uve
Vddによって、VILが変化するのはなんでだろうか。
単にMOS FETのGateがポートに出てくるなら、VgsはVddに非依存かなと。思う。
300774ワット発電中さん:2012/03/10(土) 19:54:58.10 ID:D7mJn1Ek
MOS FETのGateがポートに出てるだけじゃないってことさ
301774ワット発電中さん:2012/03/11(日) 05:29:12.63 ID:u4MFGkDN
>>299
なんで?普通のCMOSの石(74HC04とか)でも、VILはVDDに依存するよ。
N-MOSとP-MOSと両方使ってるからなんじゃない?
302774ワット発電中さん:2012/03/11(日) 11:19:55.99 ID:iLq/9KJH
MPLABXに移行しようと思っているんだけど、使用感とか聞かせてもらえないでしょうか。
303774ワット発電中さん:2012/03/11(日) 12:59:09.12 ID:DkEQXsdh
>>302
いいと思うよ
起動に少し時間かかるけど、使用時は特に重さも感じない
304774ワット発電中さん:2012/03/11(日) 23:27:16.63 ID:OigJDc1k
PIC FLASH(初歩のPIC)以外で
サイトだけですっと頭に入り勉強できる有意義なサイトないですか?
305774ワット発電中さん:2012/03/12(月) 00:44:17.07 ID:RUrOHn9i
ない。
が、ここはどう?
http://p.tl/y7vM
http://p.tl/yJEn
306774ワット発電中さん:2012/03/12(月) 08:52:09.49 ID:5mZoyGAW
データシートを読むのが一番ですよ。日本語のデータシートもだいぶ増えてきましたし。
http://www.microchip.com/TechDoc.aspx?type=datasheet

もしプログラミング自体がわからないなら、先にPC上でC言語の勉強をしたほうが良いです。PCのほうがデバッグが楽ですし、マイクロソフトのコンパイラも無料で使用できますから。
307774ワット発電中さん:2012/03/12(月) 11:34:47.81 ID:MAUJWrdL
MPLABのシミュレーションでも大丈夫かと。
308774ワット発電中さん:2012/03/12(月) 19:20:12.40 ID:AINl1ZsE
秋月の新商品に出てる18F25K22、18F23K22に対して
・Flash 4KW→16KW
・SRAM 512B→1536B
・EEPEOMは変わらず
・値段 160円→170円
309774ワット発電中さん:2012/03/13(火) 09:10:04.92 ID:ua7pgUJt
そろそろ12F・16Fから外に出ようかなぁ
作るものによるだろうけど、次は18Fでいいんかね?
310774ワット発電中さん:2012/03/13(火) 09:50:33.78 ID:FeM9i/k/
割り込みが有るか無いかはどこで見分ければいいのかな?
10Fと12Fは全部割り込み無しでおk?
311774ワット発電中さん:2012/03/13(火) 10:53:55.72 ID:VkQdZyyb
>>310
10Fは全部なし
12F50xはなしでそれ以外はあったはず(6xxや4桁品は割込有)
見分け方は命令が12bitか14bitか
312774ワット発電中さん:2012/03/13(火) 14:21:01.19 ID:BCnt85bo
割込み無しだと、マイコンの使い道として、
だいぶ限定されそうだけど、どうなんでしょうか。
313774ワット発電中さん:2012/03/13(火) 14:26:50.75 ID:AW6H1hao
>>309
用途で分ければ良いと思うよ。
電池で動かすとかは12F629や12F675の信じられないスリープ電流も捨てがたい。
超低消費はLFシリーズなどで対応しているが、秋月で買えるというのがミソだし。

新しいPICは多機能な反面、設定レジスターが多すぎる。
昔のは簡単に組めるからよいとか。
ターゲットがマイコン好きなのか、目的を達成したいかの違いで
アプローチが変わると思うけれども、
メジャーなPICは当分ディスコンにならないだろうから適材適所に使えてこそだと思う。
314774ワット発電中さん:2012/03/13(火) 14:30:07.23 ID:AW6H1hao
>>312
PICが小売で35円で買えるから、
電源を投入した時だけ仕事するものとか、
点滅させるとかには、割り込みなしでも十分使える用途ありますよ。
10円トランジスタを3つ使ってもマイコンにならないですし。

http://akizukidenshi.com/catalog/g/gI-02103/
315774ワット発電中さん:2012/03/13(火) 23:13:25.64 ID:dASgiRIP
同じ電池駆動だけど数mAのマイコンの消費電流とか基本興味ない人種もいるよね
モーターガンガン回す競技系ロボットバカとかラジコンバカとか

ま、数年前の俺と友人のことなんだが
当時の俺らにはSLEEPにしたりクロック落としたりして
数ミリの電流に一喜一憂する人々が不憫にすら見えたものだ (遠い目
316774ワット発電中さん:2012/03/14(水) 17:41:15.29 ID:5D+kkNaB
>>311
WDTリスタートとパワーオンを判定できるので割込みタイマーの代わりする事もできる。

317774ワット発電中さん:2012/03/14(水) 18:32:42.87 ID:8mj2rwSl
>>316
kwsk
318774ワット発電中さん:2012/03/14(水) 19:51:59.96 ID:rJEp+za3
>>317
文章のまんまじゃね?
起動直後にレジスタチェックして、起動要因を判別。WDTによるならRAMの内容を信用して処理続行。
319774ワット発電中さん:2012/03/14(水) 22:11:17.15 ID:6hwZgrpi
>>318
割り込みでなくリセットだから、中断点から再開できない。
どんな状態からでも再開できる工夫が必要だよね。
320774ワット発電中さん:2012/03/14(水) 22:55:49.01 ID:YpyFU8L3
単純に1巡のタイマーでいいのなら、次のリセットまでに処理を完了させればいい。
定期タスクを起床するような使い方やね。
321774ワット発電中さん:2012/03/14(水) 23:37:12.34 ID:71umt2ol
>311
PIC10Fの中でも 10F320/322は Mid-range の14bit命令、割込みもある。
PIC10F322 ADC(8bit)有,PWM有,0.5Kw,内蔵クロックmax16MHz,他にFVR,温度計,CLC,NCO,CWG
新型のチップだからか新しい機能が盛り沢山
322774ワット発電中さん:2012/03/15(木) 00:16:45.82 ID:4dgC7GNS
>>320
いつリセットが掛かるかわからない。
だから、単純には、処理を完了してスリープするのが簡単だね。
でも、スリープ中は何もできなし、ウォッチドッグは精確さに欠けるから使いにくいよね。
これは、省電力のために使う機能だろう。
精確さが必要ならタイマを細かくチェックする方が使いやすいかもしれない。
323774ワット発電中さん:2012/03/15(木) 01:59:01.31 ID:h5w+bo7D
>>322
>これは、省電力のために使う機能だろう。
一度WDTでググってみた方がいいよ
リアルで恥かく前にね
324774ワット発電中さん:2012/03/15(木) 07:50:17.41 ID:dMaQLdP8
>>322
WDTを定周期タイマの代わりに使うのだから正確さは後回し。
仕様マージンに納まっていればそれなりに使える。防犯用のランプ点滅とか、のんびりした物なら問題無いと思う。
定周期処理は次のタイミングまでに処理を終わらせておくのが原則だから、処理中にいつリセットがかかるかわからない様な設計は論外。
325774ワット発電中さん:2012/03/15(木) 14:29:04.65 ID:4dgC7GNS
>>323
既に、ウォッチドッグとして使っていないからね。
名前だけで、内容まで判断するのは止めた方がよいよ。
326774ワット発電中さん:2012/03/15(木) 14:45:30.14 ID:4dgC7GNS
>>324
本来のウォッチドッグは、特定ポイントを特定時間内に必ず通るようなプログラムのためのもの。
リセットが掛かるかもしれない場所は想像できても、その通りとはいかないことも想定しなければならない。
異常事態だから最初からやり直しで問題ない場合が多いかもしれないが、それが許されない場合もある。
327774ワット発電中さん:2012/03/15(木) 21:55:22.31 ID:wfTDOCSP
アッセンブラ使って定数領域 cblockを 16F88とかだと
0x20から 0x7Fまで 96バイト使えますが、
それ以上の定数領域を使いたいとき、
やはり banksel使って他の bankに確保するしか
無いんでしょうか?
328774ワット発電中さん:2012/03/15(木) 22:18:43.19 ID:pbDNBESc
>>327
先ず「定数」について勉強しなさい
329774ワット発電中さん:2012/03/15(木) 23:55:09.46 ID:LzWygnse
定数はソースに直で書くと配列を取らずに確保してくれるぞ
330327:2012/03/16(金) 00:14:02.92 ID:xk7gioun
ごめん間違えた
定数で無く変数か

teisu1 equ 0xAA
movf teisu1,W
movwf hensu1

これだと teisu1の方はアドレス割り振られないけど
hensu1の方は 0x20から 0x7F間に指定しておかないと
アッセンブルしたときエラー出るよね?
331774ワット発電中さん:2012/03/16(金) 03:23:32.18 ID:tb0oNqN5
それはあまりにも初歩過ぎだろ
332774ワット発電中さん:2012/03/16(金) 22:09:37.58 ID:bBDXgHxD
>330
16F88ならBANK0〜3まで使えるから

 CBLOCK 0x20 ;BANK0 0x20-0x7F
  AAA
 ENDC
 CBLOCK 0xA0 ;BANK1 0xA0-0xEF
  BBB
 ENDC
 CBLOCK 0x110 ;BANK2 0x110-0x16F
  CCC
 ENDC
 CBLOCK 0x190 ;BANK3 0x190-0x1EF
  DDD
 ENDC

で定義して、それぞれBANKSELで使えると思うけど,質問にあってるかな?

 BANKSEL AAA
 MOVWF AAA
 BANKSEL BBB
 MOVWF BBB
 BANKSEL CCC
 MOVWF CCC
 BANKSEL DDD
 MOVWF DDD
333774ワット発電中さん:2012/03/16(金) 22:57:51.18 ID:RrB5Ot26
初心者はバンク0RAM以外は使わないほうが良い。
334774ワット発電中さん:2012/03/16(金) 23:09:55.92 ID:xjVpEjeQ
趣味なんだからどんどん難易度を上げて、パズル的な快感を味わうといい

実用の人はCで
335774ワット発電中さん:2012/03/16(金) 23:16:45.85 ID:O/keLhhQ
こないだのものだけど
PIC15F57でアセンブラの最低限のテンプレを作ってくれませんか?
定義文がまったくわからん。
336774ワット発電中さん:2012/03/16(金) 23:21:20.31 ID:Bluj1laV
>>335
まずはタイピングの練習からはじめやう
狙ってるなら構わんけどw
337774ワット発電中さん:2012/03/16(金) 23:52:37.46 ID:O/keLhhQ
338774ワット発電中さん:2012/03/16(金) 23:53:42.67 ID:wOkUeD+7
まんま読んだ通りで、エラーじゃないわけだが
339774ワット発電中さん:2012/03/17(土) 00:02:17.94 ID:KWx+DzZA
とりあえず情報の多い石から慣れることから始めろやぁ。
340774ワット発電中さん:2012/03/17(土) 00:11:37.83 ID:NCNrLP31
>>332
CBLOCKでこんなに詳細に指定できるのか
341774ワット発電中さん:2012/03/17(土) 00:24:16.92 ID:J2p4VsRU
>337
エラーじゃなくてWDTが動作してリセットがかかる状態。
ただそのソースだとCONFIG設定で_WDT_OFFになっているから本来はかからないはずなんだけど…
デバイス選択でも違うのかな

しかしなぜにいまさら16F57?
PIC16F57マイコンデジタル時計キット のソース探してた人?

342332:2012/03/17(土) 00:43:36.55 ID:J2p4VsRU
>340
一応 MPLABでアセンブルもできたしSIMでも問題なかったよ。
16F88はRAM 96+80+96+96=368バイトとけっこう使いでがありそうだけど
1回BANKSEL使うと2命令も使用するのは痛いね。
Enhanced Mid-Range(PIC16F1xxx)はBANKが32個もあるけど、MOVLB
1命令で切り替えられるのは大きいな。FSRで0x2000以降にRAMが
連続配置されたのも良いけど
343337:2012/03/17(土) 05:46:56.64 ID:YT63IrLD

addwf = 76822
andlw = 115062
andwf = 76746
bcf = 0
bsf = 37
btfsc = 4758297
btfss = 4758490
call = 57531
clrf = 16
clrw = 0
clrwdt = 1
comf = 0
decf = 9588
decfsz = 19177
goto = 4830249
halt = 0
incf = 19178
incfsz = 0
iorlw = 0
iorwf = 95885
movf = 4863844
movlw = 57691
movwf = 95886
nop = 0
option = 1
retlw = 57531
rlf = 0
rrf = 0
sleep = 0
subwf = 2
swapf = 67120
tris = 0
tris = 0
tris = 1
tris = 1
tris = 1
xorlw = 38392
xorwf = 9497493

Simulation Execution time on this computer: 4.534 seconds (29495042 instructions, 6.505 MIPS).




こんなのが出たけど、これを前ステップとの変更値のみ色付けするようなやつないの?
毎回ディスプレイプロファイルしてたら疲れるんだけど。。
344774ワット発電中さん:2012/03/17(土) 11:02:01.98 ID:J2p4VsRU
>343
それって MPLABのDebugger - Profile - Display Profile の表示?
色付けは無いんじゃない、必要性が感じられないし

Debugger - StopWatch はよく使うけど、Debugger - Profile - Display Profile の
どの命令を何回使ったかとかどういう時に必要なの?

何をどうしたいのか?
何をどうして、どうなったのか?
等の情報が少なすぎだよ。 エスパー養成所じゃないのだから
345774ワット発電中さん:2012/03/17(土) 11:10:04.63 ID:J2p4VsRU
>335
自PCのMicrochipのフォルダ(MPLABをインストールした)を"16F57"で検索すれば
16F57TEMP.ASMと16F57TEPO.ASMがあるよ。
346337:2012/03/17(土) 11:26:41.55 ID:YT63IrLD
http://uproda.2ch-library.com/502601O4t/lib502601.png

ここのステイタスの意味教えてくれませんか?

あとどうやったらループを抜けれるのでしょうか?入力ボタンとか?
347327:2012/03/17(土) 13:08:30.18 ID:694jTYVE
>>332
ありがとう
今まで bank0だけでぎりぎり足りていたので、
実際別バンクに変数領域確保したことは無かったのですが、
cblock命令の前に banksel命令するのかと思ってた
そういう指定方法で bank0以外でも確保できるんですね

1秒ずつ 1分間データーを保存
みたいな使い方するとき、連続して別バンクにするようにします
348774ワット発電中さん:2012/03/17(土) 21:39:40.43 ID:J2p4VsRU
>347
余計な御世話かもしれないけど、そういう用途ならFSR&INDF(ポインタ)の出番かと
 BCF STATUS,IRP ;INDFのアクセスをBANK0,1
 MOVLW 0xA0
 MOVWF FSR
LOOP
 MOVF ○○,w
 MOVWF INDF
 INCF FSR,f
 GOTO LOOP

新型の16F1xxxなら 各BANKの0x20〜0x6Fが0x2000以降に連続配置されてい
てポインタのオートインクリメントもある (0x2050はBANK1の0x20)
 MOVLW 0x20 ;0x2050→FSR0
 MOVWF FSR0H
 MOVLW 0x50
 MOWF FSR0L
LOOP
 MOVF ○○,w
 MOVWI INDF0++
 GOTO LOOP
349774ワット発電中さん:2012/03/17(土) 22:11:23.47 ID:J2p4VsRU
>346
1)STATUS=0x18
PA<1:0>=00,*TO=1,*PD=1,Z=0,DC=0,C=0
Page0,タイムアウトしていない,パワーダウンしていない,Z&DC&Cフラグとも立っていない
2)約2048サイクル過ぎたら
350774ワット発電中さん:2012/03/18(日) 00:00:50.44 ID:vcjNr1pw
MPLABと7セグ4桁時計表示を連携するようなソフトないの?
351774ワット発電中さん:2012/03/18(日) 00:03:00.08 ID:tGhepyuW
>>348
そうなんだよ。俺も言おうとしてたんだよ
>>347←こんなに大量に名前ありの変数が要るはずがないって
352774ワット発電中さん:2012/03/18(日) 00:08:12.14 ID:tGhepyuW
>>351
全部宣言して、先頭の名前だけ使ってFSR…というのはおかしくないけど
353774ワット発電中さん:2012/03/18(日) 01:10:38.49 ID:gREn3Kky
>350
無い

>335,345
>337,341
>343,344
>346,349
お前の質問は一方的で状況を全く説明できていないから
無意味なやり取りが続くだけだと、そろそろ気づかないか?
354774ワット発電中さん:2012/03/18(日) 02:54:13.88 ID:oMckW9WJ
半端に答える輩がいるからな…
詐欺師と被害者の関係によく似てるんだなw
355337:2012/03/18(日) 08:07:00.19 ID:vcjNr1pw
多少役にたってるんだけどw
356341:2012/03/18(日) 09:01:31.48 ID:gREn3Kky
>354
そうだな、答えるのはやめておこう。
357774ワット発電中さん:2012/03/18(日) 10:42:27.48 ID:6goPsyga
LinuxのC30ってファイル名はcase-sensitiveだったのね w
Windows環境からLinuxに移ってCan't find xxxxエラーの嵐で焦った。
#include "p24fxxxx.h" <-エラー ->  #include "p24Fxxxx.h"
358774ワット発電中さん:2012/03/18(日) 10:59:25.21 ID:tGhepyuW
だからWindowsプラットフォーム上でファイルの中に記述するファイル名を大文字にするのは関心しないんだよね
359774ワット発電中さん:2012/03/18(日) 12:04:41.32 ID:BT/YqdEn
関心は持った方がいいと思います
360327:2012/03/18(日) 18:13:22.63 ID:CKzaezuP
ありがとう
がんばってみる
361327:2012/03/18(日) 18:14:14.72 ID:CKzaezuP
↑ 348さんへ
362774ワット発電中さん:2012/03/18(日) 22:03:16.97 ID:edwn8S9c
F1見てたら、PICとか言うヤツが出てた。
363774ワット発電中さん:2012/03/18(日) 23:44:54.46 ID:5N5Y/1C4
質問。
USB内臓のPICでモノをつくってる。
後閑さんの本を買ってだいたい思い通りに
ハードもソフトもつくれたんだけど、
ちょっと調べ物をしていたら今使ってるPICは
少し古い、という情報を小耳に挟んだ。
本(平成18年出版)に紹介されていたのは、
PIC18Fの2455、2550、4455、4550だけだったので、
ピンの数がちょうどよいPIC18F2550を選んだんだけど。

マイクロチップでUSB内臓ということで検索したら
ttp://www.microchip.com/ParamChartSearch/chart.aspx?branchID=8011&mid=14&lang=en&pageId=75
で118個もヒットした。

一方秋月ではUSB内臓のは
ttp://akizukidenshi.com/catalog/c/cpicusb/
と7種類くらいしかない。

実際、処理速度の面ではもの足りなさを感じてはいるんだよね。
(電光掲示板をつくってるんだけど、ダイナミック点灯にチラツキが出ている)
マイクロチップの一覧では2550はMIPS 12となっているけど、
最高のものではMIPS 80まであるみたいだし。

質問は
・PIC18F2550は今から使うPICとしては古くてもっといい選択肢がある?
 (特に処理速度を求める場合はどのあたりラインナップがオススメ?)
・マイクロチップでヒットしても秋月でヒットしないようなPICは何なの?
 (マイナー過ぎて取り扱っていないってこと?)
・そういう場合、みんなはどこで買うの?

お願いします。
364774ワット発電中さん:2012/03/19(月) 00:04:58.09 ID:bimHNeuY
詳しく知らないけど、2550好き
365774ワット発電中さん:2012/03/19(月) 00:08:00.31 ID:2THr0sKS
・目的が果たせさえすれば良し
・気にすんな
・気にすんな
366774ワット発電中さん:2012/03/19(月) 00:13:14.02 ID:vVL5sOdK
速度が遅いなんて気にしたことないぞ
367774ワット発電中さん:2012/03/19(月) 00:33:36.50 ID:Rx6kwwYd
18F14k50は少ピンでUSB付いててお気に入りだ
スピードは2550と同じ48MIPS
18Fで速度足りなきゃ24Fに行けばいいだけの話
368774ワット発電中さん:2012/03/19(月) 00:39:55.26 ID:AsSP7RoY
>>367
18F14k50はUSBインターフェース時だと48MIPS出ないんでは?
369774ワット発電中さん:2012/03/19(月) 00:44:33.90 ID:Rx6kwwYd
>>368
48MHz = 12MIPS だねスマソ
370774ワット発電中さん:2012/03/19(月) 00:47:02.11 ID:AsSP7RoY
ただPICのUSB、I/O側を3.3Vに出来ないのが使いづらいんだよね。
371774ワット発電中さん:2012/03/19(月) 03:18:33.13 ID:rKFV9JMe
ほんとに48MIPSあったらいいのにな〜w
2550だとUARTとSPI同時に使えないから仕方なくソフトでSPI通信したけど
700kbpsぐらいしか出せなかった
372774ワット発電中さん:2012/03/19(月) 04:26:44.84 ID:AsSP7RoY
>>369
そういう意味じゃなくUSB使うと最高24MHzしか選べないって意味っすよ。

>>371
2550のMSSPとEUSARTって同時に使えるんでは?
373774ワット発電中さん:2012/03/19(月) 05:31:53.91 ID:s/tOlTH2
RSの3400円ボード欲しい。
374774ワット発電中さん:2012/03/19(月) 08:00:12.22 ID:encnESGs
>372
MSSP(SPI)のSDO と EUSARTのRX が同じピンみたい
375774ワット発電中さん:2012/03/19(月) 08:11:26.77 ID:O7ofGehv
>>372
入力クロック12MHz、PLLx4、Divider00にすればCPUに48MHz入るしUSBも48MHzだけどそれでも24MHzなの?
376774ワット発電中さん:2012/03/19(月) 14:10:12.93 ID:BuPH6eRz
俺も18F14k50好きだ
377774ワット発電中さん:2012/03/19(月) 20:45:45.73 ID:bimHNeuY
14kはいかにも廉価版という感じで、落とし穴にはまりそう
378774ワット発電中さん:2012/03/19(月) 23:19:55.79 ID:I41LhpFU
>>374
そそ、18F2550や4550はRC7でSDOとRXが被ってる
最近24FJ64GB0002に乗り換えてそういう悩み無くなったけど
USB付きのGB系は秋月に売ってないのよね
379774ワット発電中さん:2012/03/20(火) 00:02:58.59 ID:Fnj9Gv5S
ヘッダ無しでデバッグできるのを選んで使ってる
380774ワット発電中さん:2012/03/20(火) 00:11:37.25 ID:dW3Pf53x
USBっつってもPCからシリアルポートに見える使い方しかしないんだけどな
381774ワット発電中さん:2012/03/20(火) 00:53:51.42 ID:KtG9U0YC
18F14k50ならUSBシリアルのチップより安いし、そういう使い方もアリなんだろうな
せっかくフルカスタムのプロトコル使えるんだから、ドライバレスにできるHIDがお気に入り
USBの速度生かしきれないけど…
382774ワット発電中さん:2012/03/20(火) 02:31:01.72 ID:0RWviX9t
16Fファミリ使ってきたけど、他のファミリも気になったから30F2020を使ってみた。
最高速度で使ってると、発熱がスゴイね。電源逆に挿したのかと思ったくらい。
383774ワット発電中さん:2012/03/20(火) 06:57:17.30 ID:imdMN1VH
>>382
ん?最高クロックで使っても
そんなに熱くならんぞ
ホワホワ温かいな〜位

なんか間違えて使ってないか?
384774ワット発電中さん:2012/03/20(火) 13:07:03.62 ID:It0xULWy
オーバークロッカーなんだろう

俺のPICはぶっちぎりだぜぇ!ヒャッハー!!
385774ワット発電中さん:2012/03/20(火) 13:31:14.87 ID:8Fu+lm/K
液体窒素で冷却しながらPICをかっ飛ばしてるスレはここですか?
386774ワット発電中さん:2012/03/20(火) 14:06:15.58 ID:9RR5Ktvl
LED点ける為に水冷にするとかもうね
387774ワット発電中さん:2012/03/20(火) 17:37:12.46 ID:dW3Pf53x
そういえばLED信号の雪が解けなくて困ってるらしいな
388774ワット発電中さん:2012/03/20(火) 21:07:14.20 ID:YteenGf9
熱が必要ならヒーターを使うだけでしょ。
389774ワット発電中さん:2012/03/20(火) 23:56:26.17 ID:KCPpuWdH
12F1822を8MHzで疑似PWM制御のLチカやった。
Pickit3だとうまくいったのに、ボタン電池だと電圧降下が起きてしまった。
LEDが光らない・・・、それ以前にPICちゃんが機能しないんだけどね。なんでだろう
390774ワット発電中さん:2012/03/21(水) 01:24:35.30 ID:GDSN21j3
ボタン電池だと電圧降下が起きるからだろ
391774ワット発電中さん:2012/03/21(水) 01:37:44.11 ID:eC/LxOGI
31kHzでやれば?
392774ワット発電中さん:2012/03/21(水) 04:08:32.64 ID:XNCQvCok
ボタン電池だと電流が流せないからだろ
393774ワット発電中さん:2012/03/21(水) 09:53:18.10 ID:fKEC07hY
394774ワット発電中さん:2012/03/21(水) 11:18:30.73 ID:WhuuVBn0
LEDを光らすことくらいできるだろ
395774ワット発電中さん:2012/03/21(水) 11:36:52.34 ID:alLTL4v1
パスコンくらい付けろよ
396774ワット発電中さん:2012/03/21(水) 11:46:48.12 ID:S4NtNcmb
PLCを使うまでもない装置に
PICで組もうと思ってみたところ
ちょっとは安くなるけどスペース的に全然コンパクトにならんのだな

基板小分けしてコネクタで階層状にしてみたいけど
基板支柱を兼ねたコネクタとかあれば教えて
397774ワット発電中さん:2012/03/21(水) 13:31:45.04 ID:s3yR4oZt
LEDだと10mAくらいほしいね。
398774ワット発電中さん:2012/03/21(水) 15:41:33.36 ID:wIq9gmJo
このサイト見ました?picのC言語って高すぎると嘆いているんですが、
たしかに個人の趣味でやるには高すぎますよね。みなさんどうしてます。

PIC C言語の落とし穴
http://gml.mydns.jp/wordpress/?page_id=1472

あとC言語、仲間で買って使いまわしできるんでしょうかね。
windowsみたいに認証がきついんですかね。
399774ワット発電中さん:2012/03/21(水) 16:02:19.44 ID:eC/LxOGI
全部無料の開発環境でやってるよ。Cは、MPLAB C Compilerか、HITEC-Cのどちらか。
PIC関連で俺が買った本は、すべて、これら無償のCコンパイラでいけるような物ばかりだったけど。
400774ワット発電中さん:2012/03/21(水) 16:02:58.61 ID:sJK7uBV8
コピーできたらコピーして使うの?
犯罪幇助はしたくないね。

まあ、純正品の $500 はちょっと高いけど、買えないこともないだろ・・・
ちなみにAVRは無料だよ。
401774ワット発電中さん:2012/03/21(水) 16:52:23.07 ID:ObAapy+7
>>398
個人の趣味ならHI-TECHのLiteかSDCCで十分でしょ。有償のものを盗んでまで使いたい理由が分からん。
402774ワット発電中さん:2012/03/21(水) 17:58:37.92 ID:1Txkn4ha
CCS-Cだって無料版なかったっけ?
403774ワット発電中さん:2012/03/21(水) 18:29:00.01 ID:Gh3GB71B
無料のコンパイラーは、ゴミがイッパイ付く
最適化すると、ほぼ半分!
単純に考えると速度半減
404774ワット発電中さん:2012/03/21(水) 18:41:56.23 ID:jxqyNVaW
質問です

dsPIC30F4011をリチウムポリマーで使用しようとしているのですがうまくいきません。

(発振子のコンフィギュレーション以外)プログラムそのままで
外部発振子20Mhzで動かすとPickit2、リチウムポリマーともに電源投入して動くのですが
内部発振子120Mhzで動かすとPickit2だと動いて、リチウムポリマーからだと動くときと動かないときがあります。


まとめると
外部発振子20Mhz、Pickit2でパソコンから電源投入 :動く
外部発振子20Mhz、リチウムポリマー :動く

内部発振子120Mhz、Pickit2でパソコンから電源投入 :動く
内部発振子120Mhz、リチウムポリマー :トグルスイッチを「カチッ」と音がならないぐらいゆっくりONにすると動く。ゆっくりにしないと動かない。
たまにゆっくりにしてもうごかない・・

最終的には内部発振子でリチウムポリマーで動かしたいのですが、

電源系はリチウムポリマー(2S 7.4V)→レギュレーター(5V)→トグルスイッチ→PIC

というかんじになっていて

コンフィギュレーションは
内臓が:#fuses hs,pr,nowdt
外部が:#fuses FRC_PLL16,nowdt,pr

原因がわかりません。
なにかヒントおしえてもらえませんか?
405774ワット発電中さん:2012/03/21(水) 19:15:03.46 ID:vETMK3qD
>>404
リチウムポリマーを電源に変えて、
電源→レギュレータ→トグルスイッチ→PIC
の構成で試してみるべき
406774ワット発電中さん:2012/03/21(水) 19:22:44.86 ID:fTG9pDwx
>>403
最適化のやり方教えて?
407774ワット発電中さん:2012/03/21(水) 19:40:36.17 ID:M+ZswBZS
>>406
これか?
C30のLite版の最適化オプション[-O1]を付けたら
2493Byteから1500Byteになったらしい。
製品版で1428Byte。
http://avr.paslog.jp/article/1221580.html
http://avr.paslog.jp/article/1224488.html
408774ワット発電中さん:2012/03/21(水) 19:57:49.91 ID:Gh3GB71B
>>406
それが有料版
409774ワット発電中さん:2012/03/21(水) 20:12:24.60 ID:M+ZswBZS
>>404
PWRT power up timer ONにしてみた?
#FUSES PUT64 //Power On Reset Timer value 64ms
410774ワット発電中さん:2012/03/21(水) 20:50:02.28 ID:xNwK5mW4
MCLRのPull-Up忘れなら先週やった
411337:2012/03/21(水) 21:17:36.00 ID:m7QqrQlx
時計キットのプログラムを流用して
0721とずっと表示させるだけのPG作ってくれんですか?
412774ワット発電中さん:2012/03/21(水) 21:36:16.83 ID:dXCP2Ohq
>>411
それマイコン要らなくね?
413774ワット発電中さん:2012/03/21(水) 21:58:52.68 ID:M+ZswBZS
>>411
CLRF MIN
CLRF HOUR

MOVLW 0x7 ;ona
MOVWF HOUR
MOVLW 0x21 ;nii
MOVWF MIN
-----
; 1Hz (1SEC)
; INC SEC
GOTO LOOP ;追加
414774ワット発電中さん:2012/03/21(水) 22:04:09.01 ID:ZB7iDYAj
>>411
ミタさんの中の人に承知させたら
415774ワット発電中さん:2012/03/21(水) 22:05:23.33 ID:vsepk3ng
家政婦の?
416774ワット発電中さん:2012/03/21(水) 22:28:51.93 ID:m7QqrQlx
ループラベルは下記でやってみます
これを元に改造をしていきます。

CLRF MIN
CLRF HOUR
LOOP MOVLW 0x7 ;ona
MOVWF HOUR
MOVLW 0x21 ;nii
MOVWF MIN
; 1Hz (1SEC)
; INC SEC
GOTO LOOP ;追加
417774ワット発電中さん:2012/03/21(水) 23:17:41.81 ID:wUL7CBIF
>>412
ワラタ
すたチック点灯で目にもやさしいな
418774ワット発電中さん:2012/03/21(水) 23:24:20.76 ID:alLTL4v1
全部光らせて余計なところをマジックで塗り潰せばおkだな
スモーク被せれば分からん
419774ワット発電中さん:2012/03/22(木) 00:01:29.95 ID:eC/LxOGI
>>406
>>408
リンク先では、Lite版で最適化かけたって言ってる。無料のはず。
420774ワット発電中さん:2012/03/22(木) 04:57:25.36 ID:w33FyJ29
:020000040000FA
:0E0000006C006D00070C2D00210C2C00020A74
:021FFE00FA0FD8
:00000001FF

翻訳したら上になったけどOK?
421774ワット発電中さん:2012/03/22(木) 05:14:27.06 ID:w33FyJ29
http://uproda.2ch-library.com/504581rkC/lib504581.png

ポートに割りついてないんだけど
これ本当に動くの?
422774ワット発電中さん:2012/03/22(木) 08:07:47.15 ID:F9szn938
>>421
スペック雑魚すぎワロタw
423774ワット発電中さん:2012/03/22(木) 08:41:21.99 ID:iezaj2cU
ラダーみたいに
内部リレーやタイマーやカウントを全部配列にして
{入力条件、解除条件、カウント値、設定値、出力}

配列だけ変更すれば汎用で使えるようにしてる人いる?
424774ワット発電中さん:2012/03/22(木) 09:07:21.01 ID:wHD7ctDM
>>421
時計プログラムを使用してって言わなかったか?
改造箇所だけでは、動かないぞ
425774ワット発電中さん:2012/03/22(木) 11:35:53.22 ID:T3szkLa2
PIC24FV32KA302
UARTの受信ができません 送信はできています

U1BRG = 25; // ボーレート 9600fps

_U1TXIE = 1; // 送信割込イネーブル
_U1TXIP = 4; // 割込優先度

_U1RXIE = 1; // 受信割込イネーブル
_U1RXIP = 4; // 割込優先度
_URXISEL = 0; // 受信割込モード

_U1ERIE = 1; // 受信エラー割込イネーブル
_U1ERIP = 4; // 割込優先度

_UARTEN = 1; // UARTイネーブル

_UTXEN = 1; // 送信イネーブル

Runの直後一度だけ受信割込みが入りますがデータレジスタは0です 何も送らずにです
あとエラー割込みも一度だけ入ります フレーミングエラーっぽい?
それ以降は何を送っても反応なし

なにか原因あるでしょうか
426774ワット発電中さん:2012/03/22(木) 11:46:16.91 ID:cLJk5wz6
>>424
もうほっときなよ
427774ワット発電中さん:2012/03/22(木) 11:59:46.35 ID:XnZWIEbK
PIC12F510でsleepからピン状態変化によるwake-upを
するとリセットがかかってしまうのですが、
sleep箇所から復帰することってできるんでしょうか?
428774ワット発電中さん:2012/03/22(木) 12:03:14.57 ID:ZcV4yIAX
510は楽しいのに誰も使ってない
429natu:2012/03/22(木) 14:58:08.12 ID:IQKk/S7A
>>425
>フレーミングエラーっぽい?
特定出来ないかね?オーバーランだと、そのビットをクリア
しないと受信出来なくなったような気がする。
430natu:2012/03/22(木) 15:05:51.60 ID:IQKk/S7A
>>427
12bitコアだと、リセットが掛かって色々ビットを調べないと
いけない。
431774ワット発電中さん:2012/03/22(木) 15:35:40.59 ID:T3szkLa2
>>429
最初に受信割込みが入ったときはフレーミングエラービットが立っていて
次にエラー割込みが入ったときはエラービットはどれも立っていない不思議現象

正直PICに不慣れで申し訳ないけど
ICD3で開発していて例えばプログラムメモリ0CF4にブレイクポイントを置いたとすると
0CF8で止まるのでその時点でイミフなんですが

コンパイラにはC30使ってます
432774ワット発電中さん:2012/03/22(木) 15:52:44.60 ID:XnZWIEbK
>>430
そうでしたか。
ありがとうございます。
なるほど、やっと解りました。
433natu:2012/03/22(木) 15:56:21.08 ID:IQKk/S7A
>>431
IFS4bits.UxERIFは、クリアしてますか。
434774ワット発電中さん:2012/03/22(木) 16:03:32.53 ID:T3szkLa2
>>433
しています
435natu:2012/03/22(木) 16:40:00.15 ID:IQKk/S7A
>>431
>最初に受信割込みが入ったときはフレーミングエラービットが立っていて
これ、エラー割込みの間違いだよね?
この時、受信データレジスタ空読みしていますか?
436774ワット発電中さん:2012/03/22(木) 17:15:52.30 ID:wHD7ctDM
プログラム全体を見ないと設定忘れとかバグのFAQしか語れないと思う
437774ワット発電中さん:2012/03/22(木) 17:20:11.07 ID:T3szkLa2
>>435
受信割込みで相違ないです
受信割込みとエラー割込みの優先度が同じだったのを、エラー割込みを上位にしてみたところ、
エラー割込みできちんとフレーミングエラーを取得することはできました

volatile int buf;
while(_URXDA) {
 buf = U1RXREG;
}

空読みはこれで結構でしょうか?
受信割込みではレジスタ読込はやっておりましたが、エラー割込みにも空読みを入れてみました
438774ワット発電中さん:2012/03/22(木) 17:38:54.02 ID:T/yCuAwK
データ無い時シリアル入力はHレベルか?
439774ワット発電中さん:2012/03/22(木) 18:23:48.15 ID:T3szkLa2
はい、そうです。ハイです
440389:2012/03/22(木) 18:27:40.65 ID:OJakrdN0
なるほど、電池って定格とかないと思ってたわ。ありがとうございますた。
441774ワット発電中さん:2012/03/22(木) 19:34:08.53 ID:p/Ok+Q3R
>>396
秋月で売ってる連結フレームとかどう?
442774ワット発電中さん:2012/03/22(木) 19:47:33.11 ID:hYeviaTY
>>429
yes。 オーバーランのときゃ、UART完全停止なんで、わたしゃ一旦UARTENをOFF/ONしてますです。
PIC特有じゃがな。 avrやARMではそんな事はやらんが w
443774ワット発電中さん:2012/03/23(金) 00:26:23.06 ID:Ajv6SHC5
PICって電池の場合、6Vで動かしたらやっぱりまずいんでしょうかね。

整流用ダイオード入れれば0.5V低下してちょうど5.5Vになるのは知ってるんですが、
貧乏性でなんかもったいない気がして、いつも悩む。
それにちょっと使えば電池が減ってすぐ5.5Vになるから、6Vでもいいんにじゃないかなと
おもったりするんですがどうでしょうかね。
444774ワット発電中さん:2012/03/23(金) 01:07:40.02 ID:QdhBjH2N
やってみれ
100円だろ?
445774ワット発電中さん:2012/03/23(金) 01:14:48.23 ID:Y3JAkqRn
電池が6Vだと思ってる時点でアウト
446774ワット発電中さん:2012/03/23(金) 01:21:24.82 ID:JpXM/cAe
>>443
電池3本じゃだめなんですか?

5.5VのPICでも6.5Vまで耐えるんじゃないのかな?
1.8V-5.5V Operation
Voltage on VDD with respect to VSS, ... -0.3V to +6.5V
447774ワット発電中さん:2012/03/23(金) 01:25:01.15 ID:Ajv6SHC5
>>444
自分でやってみた範囲では1年は大丈夫なようですね。でも今度知人用に便利グッズ
を作ってプレゼントしようとしてるんですが、どれぐらい持つのかなと思って。
448774ワット発電中さん:2012/03/23(金) 01:27:56.59 ID:KaL/xkhx
Absolute Maximum Ratingsの意味を理解しているんだろうか
449774ワット発電中さん:2012/03/23(金) 01:33:21.64 ID:Ajv6SHC5
ぜんぜん理解してませんけど。
450774ワット発電中さん:2012/03/23(金) 01:51:03.56 ID:Ajv6SHC5
>>446
今度連続的に6.5Vかけてどのくらいもつか実験してみます。6.5VでOKならよさそう。
451774ワット発電中さん:2012/03/23(金) 02:00:51.87 ID:jL1DVZ7m
>>447
壊れたら無料修理のアフターサポート付きでプレゼントすれば良いんじゃない?
452774ワット発電中さん:2012/03/23(金) 02:03:57.26 ID:s+9ow6te
PIC16F887に数秒8.4Vかけて壊れなかったことならある
453774ワット発電中さん:2012/03/23(金) 02:11:14.01 ID:jL1DVZ7m
なんか、みんな微妙に間違った解釈に行くように導いているような(^^;

Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the
device. This is a stress rating only and functional operation of the device at those or any other conditions above those
indicated in the operation listings of this specification is not implied. Exposure above maximum rating conditions for
extended periods may affect device reliability.

まぁ、仕事で使うのと趣味で使うのとでは、どの点にどれくらい気をつけないといけないかは
当然違うのだけれど。
454774ワット発電中さん:2012/03/23(金) 02:19:17.42 ID:KaL/xkhx
じゃあAbsolute Maximum RatingsとRecommended Operating Conditionsの違いを分かってるのかな?
これでいいでしょ
455774ワット発電中さん:2012/03/23(金) 02:22:14.48 ID:0bS7GZdP
>>452
俺は新品の9v電池w
16f84aだったが動いたわ。爆熱だったけど。
456774ワット発電中さん:2012/03/23(金) 02:49:33.46 ID:jL1DVZ7m
>>454
いい、はず…。でも、駄目みたい。orz

まぁ、Microhipが保証できないところ、あんたらで保証してやりなってとこかな。
めんどうなら、パスコンもLEDに直列の抵抗も、無しで良いよw
457774ワット発電中さん:2012/03/23(金) 08:51:38.12 ID:R3xA/0Be
使い古しの携帯バッテリーを使えるように
治具つくってみようかな
458774ワット発電中さん:2012/03/23(金) 09:47:32.19 ID:7l7jancr
>>455
次はオーバークロックに挑戦!
459774ワット発電中さん:2012/03/23(金) 10:28:35.86 ID:y3qQRZ3e
PIC用リテンションキットが秋月から発売される日も近い
460774ワット発電中さん:2012/03/23(金) 16:41:38.63 ID:TacbFXe4
8.6Vでも動いてるよ。
12F629ね。頑丈だなぁ
461774ワット発電中さん:2012/03/23(金) 17:10:54.68 ID:Y3JAkqRn
もう一台同じもの作ったら動かんかもしれん話だ。あえて高くして使う意味はない。
462774ワット発電中さん:2012/03/23(金) 17:14:39.34 ID:L0rqJEo4
千個くらい試せばいいと思う
463460:2012/03/23(金) 17:17:14.66 ID:TacbFXe4
300個くらい作ったが、高電圧のせいで動かなかったことはない。
464774ワット発電中さん:2012/03/23(金) 18:23:31.48 ID:UAqtwxKJ
質問です。

MPLABXとPICKIT3でデバッグしています。
MPLAB8では、ワンクリックでビルド→書き込み→main関数の先頭まで実行
が設定すればできるんですが、
MPLABXではどこで設定できるんでしょうか?

465774ワット発電中さん:2012/03/23(金) 18:57:55.59 ID:hQ8k46YR
逆挿しして多少焦げ臭い匂いがしたPICでも平気で動くもんな・・・
466774ワット発電中さん:2012/03/23(金) 19:26:40.32 ID:3noA189P
どっかのポートだけ死んでたりするけどな
467774ワット発電中さん:2012/03/23(金) 19:57:31.53 ID:XjmPhLxR
おまえらあんまりいぢめるなよ
468774ワット発電中さん:2012/03/23(金) 20:23:42.15 ID:Jrv+OiZb
>>463
ぜひ名前を明かしてくれ、うちからは絶対に仕事を回さないから。
469774ワット発電中さん:2012/03/24(土) 00:27:33.58 ID:C5Do9Mwe
このスレ見てる奴が発注側であるわけがない
いるとすればお勉強のため
笑える
470774ワット発電中さん:2012/03/24(土) 00:30:47.13 ID:JryTkOFk
>>468
理系のギャグは笑えない
471774ワット発電中さん:2012/03/24(土) 00:44:54.27 ID:jp1jrYP8
えっどこがギャグなの?
472774ワット発電中さん:2012/03/24(土) 01:40:34.45 ID:JryTkOFk
えっ、ひょっとしてマジなの?
473774ワット発電中さん:2012/03/24(土) 15:19:28.91 ID:Lai9PZ8X
時計キットの人、出来たのかな?
アセンブラが解ってなさそうなのでCで組めばいいのに
474774ワット発電中さん:2012/03/24(土) 16:05:59.06 ID:CHD0B9ds
なんとなくイメージで適当に作ったけど動くのこれ? TRIS PORTA が1Fになってるのが意味不明(ウォッチ)

MOVLW 0x0F
TRIS PORTA
MOVLW 0x00
TRIS PORTB
TRIS PORTC
CLRF PORTB
CLRF PORTC

LOOP MOVLW B'00010000'
MOVWF PORTB
MOVLW B'01111101'
MOVWF PORTC

MOVLW B'00001000'
MOVWF PORTB
MOVLW B'01110001'
MOVWF PORTC


MOVLW B'00000100'
MOVWF PORTB
MOVLW B'01101110'
MOVWF PORTC


MOVLW B'00000010'
MOVWF PORTB
MOVLW B'01010000'
MOVWF PORTC

GOTO LOOP
END
475774ワット発電中さん:2012/03/24(土) 16:36:09.28 ID:Lai9PZ8X
>>474
・ダイナミック点灯は光らしてから少し時間待ちして次の桁へ
・点灯をOFFしてから次の桁をONしないと隣の表示が残像のように混ざる
・HW自作? 時計キットの7SEGコモンは、
 RB7 *--- 左から1ケタ目
 RB6 -*-- 左から2ケタ目
 RB5 --*- 左から3ケタ目
 RB0 ---* 左から4ケタ目

だと思う。
476774ワット発電中さん:2012/03/25(日) 01:12:12.93 ID:+AJvjdQI

PICで電池3本の4.5Vで駆動するテレビのリモコンつくりました。
しかし、電池2本で駆動する正規のリモコンより出力が弱いです。
パワーアップする方法ないでしょうか。

赤外線LEDは千石で買った
東芝 TLN105B ED 最大定格(順電流:100mA) 
これをトランジスタ2SC1815でドライブしてます。
PICからは1Kオームの抵抗でトランジスタのベースにつないであって、LEDには
抵抗をはさんでません。
もともとLEDがちがうんでしょうかね。

477774ワット発電中さん:2012/03/25(日) 01:20:06.69 ID:AOG2/OlP
>>476
コレクタ・エミッタ間飽和電圧 VCE (sat)
IC = 100 mA, IB = 10 mA
- 0.1 0.25 V
ベース抵抗を小さくしてみれば?
478774ワット発電中さん:2012/03/25(日) 01:24:49.79 ID:63B6IKkA
これに替えてガツンと流せ
http://akizukidenshi.com/catalog/g/gI-03261/
479774ワット発電中さん:2012/03/25(日) 01:30:49.32 ID:+AJvjdQI
>>477
ありがとうございます。そうしてみます。
480774ワット発電中さん:2012/03/25(日) 01:31:56.04 ID:9fJPz1e6
受光素子の受光波長とあってるのかねぇ。
481774ワット発電中さん:2012/03/25(日) 01:47:54.32 ID:U+veNOdN
電力がもったいないから2本くらい直列にしろよ
482774ワット発電中さん:2012/03/25(日) 02:52:22.24 ID:+AJvjdQI
>>480
それも確認します。
>>481
2本直列にしたらパワーでそうですね
483774ワット発電中さん:2012/03/25(日) 03:01:46.94 ID:UKEomEI5
>>476
デジカメとかビデオカメラを使うと赤外線が見えるから確認してみるといいかも。
484774ワット発電中さん:2012/03/25(日) 14:41:21.00 ID:ulDbjfLa
>>476
LEDのものによって出力が違うからね
あと瞬間的にはかなり電流流しても大丈夫みたい
自分が前に作った時は
ベース抵抗:2Ω(2kじゃなくて2)
電源:5V、でいけた
38kHzでON/OFFするのは大丈夫だけど、
試しに1秒間ONにしてみたら、LEDから魂が抜けた
485774ワット発電中さん:2012/03/25(日) 15:45:24.13 ID:ukgKtLLp
初代PICのGeneral Instrument社 PIC1650 データシート見つけたのでURL置いておく
ttp://www.rhoent.com/pic16xx.pdf

12bit長インストラクション BaselinePICとほぼ同じ(OPTION.TRIS,SLEEP,CLRWDTが無いだけ、必要ナイカラネ)
RAM32バイト,ROM512ワード,I/O PORT A,B,C,D 32本
メモリアドレス
0 INDF
1 TMR0
2 PCL
3 STATUS
4 FSR
5-8 PORTA-D
9- RAM
486774ワット発電中さん:2012/03/25(日) 16:13:40.65 ID:FjHm3dew
1977?
487774ワット発電中さん:2012/03/25(日) 16:26:36.96 ID:ukgKtLLp
>486
ttp://www.cqpub.co.jp/hanbai/books/37/37291/37291-intro.pdf
これだと1976年

8080や6800 の2年遅れ、Z80と同期
8051より4年先輩
AVRの90sは1996年らしいから 実に20年差
488774ワット発電中さん:2012/03/25(日) 16:30:22.04 ID:9fJPz1e6
>>487
90sってもしかして'90s(nineties:90年代)から来てる?
489774ワット発電中さん:2012/03/25(日) 17:52:34.05 ID:75Zzc/an
dsPICって、秋月電子通商での取り扱い種類少ないねぇ。
PIC16FやPIC18Fに比べれば、あまり使われていないのかな?
490774ワット発電中さん:2012/03/25(日) 18:47:27.69 ID:ukgKtLLp
>489
dsPICというか16bitのワンチップマイコンの用途って趣味の電子工作じゃそれほど出番ないと思う。
逆に12&16Fあたりだとコスト的にTTL代わりに使ってもおかしくないからね
491774ワット発電中さん:2012/03/25(日) 19:32:39.06 ID:FMJDeITH
グルーサーキット
492774ワット発電中さん:2012/03/25(日) 20:28:08.98 ID:Y3ka3cli
dsPICの進化の8bit版を出せばいいのにな
いろいろ精錬してさ
493774ワット発電中さん:2012/03/25(日) 20:41:55.00 ID:0zSnv1gD
> 8080や6800 の2年遅れ、Z80と同期
まさかの最古参クラスだったのか・・・
C84が出てトラ木で取り上げて知ったクチには驚天動地だな。
494774ワット発電中さん:2012/03/25(日) 20:50:40.62 ID:ukgKtLLp
>493
私も昨日 見つけて驚いてたw どうせ元になっただけでほとんど別物だろうと
datasheet見たらBaselineのPIC(16F57とか10F222等)とほとんど同じ。
しょぼい命令体系だとは思っていたけど、まさかZ80と同時代にROM,RAM,PIO
まで内蔵したマイコンだったとは、そりゃ命令体系に回路さけないよね。
495774ワット発電中さん:2012/03/25(日) 22:36:45.65 ID:ukgKtLLp
8080のトランジスタ数が4500ヶ、6800が5400ヶ、同期のZ80が8200ヶ
こんな時期のマイコンでプログラム領域のROMに 512x12bit ( 6144bit )を
さくって どれだけチップの面積取られたんだろうな。
496774ワット発電中さん:2012/03/25(日) 22:48:55.45 ID:jLOS3u0l
同時期のインテルの8048でも1Kx8ビットのROM積んでたみたいだし、そんなすげくないんでないの。
http://en.wikipedia.org/wiki/Intel_MCS-48
497774ワット発電中さん:2012/03/26(月) 02:01:26.03 ID:vW52qgee
>>485 thx
こういうシンプルなのは、CPUの中身を理解するのに、役立つな。
498774ワット発電中さん:2012/03/26(月) 07:58:26.28 ID:mTq1fpUf
【技術/照明】 東大がシリコン製LED開発 明るさ3倍、材料コスト40分の1 早期実用化を目指す
http://anago.2ch.net/test/read.cgi/scienceplus/1332715333/

入出力の端子のトコが光るLED付きPICが作れそうだな
499774ワット発電中さん:2012/03/26(月) 09:56:38.40 ID:KRIPYmR9
EPROMみたいな窓付きパッケージにしないと見えないけどな
500774ワット発電中さん:2012/03/26(月) 17:59:56.13 ID:TY2v7VvH
LED外付けせずにチカチカ出来ます的な
I/Oの状態が分かるのは便利そうだな
501774ワット発電中さん:2012/03/26(月) 20:44:37.73 ID:r/WFSqyH
LEDチカチカ練習用PICですね。わかりません。
502774ワット発電中さん:2012/03/26(月) 20:56:56.99 ID:qMthVr7Y
そろそろ透けてるPICが出てもいいはずなんだが・・・・
503774ワット発電中さん:2012/03/26(月) 22:08:01.36 ID:/tj+AJvS
絆創膏と前貼りのがいいです
504774ワット発電中さん:2012/03/26(月) 22:39:57.21 ID:VnhCASx9
なんか大昔に、亀の子でメモリかなんか乗せるやつってなかった?
店員が「高いよ。マイコンだよ」とか言ってた気がする。端子が全部金メッキだった。

>>500
PPIでそんなのあったね。ハイブリッドだったけど。

>>502
Z80ができるんだからCPU自体はできそうだけど、メモリ関連ってどうなんだろう。
505774ワット発電中さん:2012/03/26(月) 23:19:37.61 ID:6tyKE8W6
>>504
ピギーバックだね。
EPROMを背中に乗っけるという、無駄に高価なパッケージだ。
まあ、EPROMがCPUと同じチップに集積できない時代に、
マスクROM版とほぼ同じ形状にできる。
506774ワット発電中さん:2012/03/27(火) 13:03:51.58 ID:FxSeASFg
>>504
バグタイザーのオマケでもらった8255互換ボードはLEDチカチカしたよ。
507774ワット発電中さん:2012/03/27(火) 15:22:31.12 ID:3cnTbfRV
ICD3でデバッグしています
RunさせてしばらくするとCPUが勝手に停止します
時間にして走らせてからおよそ2分20秒後くらいです

レジスタの設定周りで何か原因に成りうるものはあるでしょうか
508774ワット発電中さん:2012/03/27(火) 15:31:33.73 ID:kNyYVUOW
CLK=16MHz(MIPS 4MHz)で2MHzのPWMが出来るのかと思ってやってみたら、
出来るんだね。これが最速か。
509774ワット発電中さん:2012/03/27(火) 17:26:01.33 ID:sy+0hR1s
>>507
ノートパソコンの節電機能でUSBがオフラインにされるとか?
510774ワット発電中さん:2012/03/27(火) 19:30:57.46 ID:3cnTbfRV
デスクトップなので違いますね
511774ワット発電中さん:2012/03/27(火) 19:54:26.90 ID:fzyqboxY
玉砕
512774ワット発電中さん:2012/03/28(水) 15:41:42.94 ID:TxVKPpzR
>>507なのですが
エミュレータ切り離して単独で走らせてみても、必ず2分12秒程度でリセットがかかりリスタートしてしまいます
以前2分20秒だったはずのものが2分12秒になったのは、プログラムが長くなった影響なのでしょうか
お手上げです 誰か分かる人いませんか
513774ワット発電中さん:2012/03/28(水) 15:44:27.08 ID:rslq96JJ
それだけの情報でわかるのはエスパーさん以外にはいないでしょうね。
凡人に聞くのだったらせめて何をさせようとしているのか、ソースぐらいは出さないと。
514774ワット発電中さん:2012/03/28(水) 15:52:26.40 ID:7ei79XZi
WDTってのがあったな
515774ワット発電中さん:2012/03/28(水) 16:22:08.25 ID:TxVKPpzR
>>514の指摘通りでした
メインループの中にWDTのリセットを挟み込むだけで解決しました

時間で自動的にスリープモードに入っているのではないかとそのへんのレジスタはあれこれ調べていたのですが
WDTが完全に視野から外れていました

勉強になりました

2分20秒はただの記憶違いだったのでしょう
516774ワット発電中さん:2012/03/28(水) 18:58:49.43 ID:+UDq8zv0
Enhanced Mid-Rangeの中で28,30ピンのPIC16F1938や1939等は
内部コアが3.6V動作の為、LDOを内蔵しており動作を安定させる為に
VACP端子にコンデンサをつないだ方がよいとの記述がデータシートにあります。

CONFIG2の設定でVCAP端子をRA0,RA5,RA6または無しに設定できますが
みなさんはどうしていますか? 試しにブレッドボードでちょこっと動かした分には
VCAP無しでも問題ありませんでした。
517774ワット発電中さん:2012/03/28(水) 18:59:42.57 ID:+UDq8zv0
>Enhanced Mid-Rangeの中で28,30ピンのPIC16F1938や1939等は
(改正) 28,40ピンです
518774ワット発電中さん:2012/03/28(水) 20:14:30.76 ID:NxSYfNCf
>>515
twelveとtwentieで間違ったんじゃね?w
519 忍法帖【Lv=2,xxxP】 :2012/03/28(水) 23:10:39.60 ID:/hFTq44Q
picをはじめるには
まずなにをすれば。
520774ワット発電中さん:2012/03/28(水) 23:42:43.60 ID:hLwxUwGM
用途から品番選定
521774ワット発電中さん:2012/03/28(水) 23:45:14.86 ID:48o8QIdX
>>519
売ってる本は全部古いから、Google検索だけでおk
ヤフーオークションにPICのすごい安いのがある

とりあえずどんどん手を動かして、やってみると良い
522774ワット発電中さん:2012/03/29(木) 01:33:37.84 ID:HkZDOaqG
>>519
まず本を一冊買うのがお勧め。PICkit3の話が出ていれば古くないから、
これを目安に買えばいい。開発環境の準備(無料)の方法なども、
書いてあるはず。

ネットも古い情報が満載なので、その点は要注意だね。まず本の内容を
ある程度理解してから、ネットの情報なんかを参考にして、色々やって
みたら?
523774ワット発電中さん:2012/03/29(木) 01:53:45.45 ID:HkZDOaqG
>>519
あと、>>520 で言っているICの種類だけれど、慣れてくるまでは一つの品番に
絞ってやった方が良い。20ピンのPICで、本で扱われている物が、初めは良いと思う。
524774ワット発電中さん:2012/03/29(木) 15:31:48.15 ID:0csthADN
pickitで実機デバッグできるPICをお勧めしたいのと雑誌等で良く使う定番も
お勧めPICは↓
ICD-Debug機能付きでDIPタイプ18-28PIN、秋月電子在庫機種でのお勧め
18PIN PIC16F819 170円 rom3.5KB
18PIN PIC16F87 200円 rom7KB PIC16F88コンパチでAD無し版だがICD-Debug付
18PIN PIC18F1320 220円 rom8KB
20PIN PIC18F14K22 160円 rom16KB
28PIN PIC16F1938 150円 rom28kB
28PIN PIC18F2550 350円 rom32kB USB付きの定番
28PIN PIC18F2620 420円 rom64kB

ICD-Debug無しだが定番
18PIN PIC16F88 200円 rom7KB
525774ワット発電中さん:2012/03/29(木) 18:06:55.08 ID:0VEU9bak
電圧計を作ってみようと思ってるんですが、
16F88とかに内蔵の 10bit A/Dコンバータで安易に済ますのと、
秋月で売ってる 12bitの A/Dコンバータ
http://akizukidenshi.com/catalog/c/cadc/
を SPI接続でがんばって使ってみるのと、10bitと 12bit、どのぐらい違いがあると思いますか?

入力抵抗が大きいテスターを作ろうと思ってます
入力段に OPAMPを使って、OP-AMPの出力を A/Dへ取り込む予定です
OPAMPは電圧フォロア、入力抵抗を上げるためだけに使う
5V以下は OPAMP通すだけ
5V以上は OPAMPの出力を抵抗分圧して A/Dへ入れて
切り替えを RELAYでやったら、アドバンテストとかの本格的なテスターと同じく、
カチカチ音がしてかっこいいかなとか思ってww

OPAMPを通すんだったら、10bitも 12bitも同じだろうとか
5V VDD Refで 12bit使うんだったら Refの 5Vを使って内蔵 10bitの方が良いダロとか
526774ワット発電中さん:2012/03/29(木) 18:15:21.77 ID:bTCNqMf4
2bitぶん違うわな
527774ワット発電中さん:2012/03/29(木) 18:18:30.31 ID:7Jy3YgeN
解像度だけじゃなくて精度も気にした方が良い。
リファレンスも安定してないとダメだしなー
528774ワット発電中さん:2012/03/29(木) 23:27:07.27 ID:0csthADN
>>525
dsPIC30F3012 は12BITのA/Dです
18pinDIP
FROM 8Kワード
RAM 2Kバイト
dsPIC30F3012-30I/P 400円
529774ワット発電中さん:2012/03/30(金) 00:02:29.52 ID:xlyFlm9W
12bitADC PIC18Fにもいくつか付いてる
40pin 18F4553 \430 16Kw/2048/256 ●USB,Max48MHz(31k-8MHz),PLL,12bitADC,CCP1/1
28pin 18F2553 \420 16Kw/2048/256 ●USB,Max48MHz(31k-8MHz),PLL,12bitADC,CCP2/0
28pin 18F2523 \390 16Kw/1536/256 Max40MHz(31k-32MHz),4xPLL,CCP2/0,12bitADC
28pin 18F25K80 \220 16Kw/3648/1024 Max64MHz(31k-64MHz),4xPLL,eUSART2,TMR2/3,CCP4/1,12bitADC.ECAN
値段的には 18F25K80。専用chipに比べてどうなのとかは?
530774ワット発電中さん:2012/03/30(金) 00:13:36.45 ID:yVKFdCPp
>>524
> ICD-Debug無しだが定番
> 18PIN PIC16F88 200円 rom7KB
デバッグできるはずだけど?
531774ワット発電中さん:2012/03/30(金) 01:52:14.17 ID:sv6Jyz2Q
質問なのですが
ソースブースト6.0と7.0に違いってありますかね?
532774ワット発電中さん:2012/03/30(金) 03:23:18.78 ID:6q5VddEe
>>530
そのようですね
microchipのProducts画面が間違っているようです。
PIC18F14K22はデバッグヘッダーが必要かも。
533774ワット発電中さん:2012/03/30(金) 18:41:35.02 ID:oPpyDBm9
>>504
>なんか大昔に、亀の子でメモリかなんか乗せるやつってなかった?

http://decadecounter.com/vta/articleview.php?item=399
↑の画像4枚目から
534525:2012/03/30(金) 20:28:18.43 ID:NP4/snCE
>>528,529

使い慣れてる 16Fばかり見てましたが、18Fとかだと 12bit A/D内蔵があるんですね
秋月ライターが使えなくなってしまいますが、グレードアップ考えてみようかなぁ
535774ワット発電中さん:2012/03/31(土) 14:27:46.77 ID:WIj4IWaR
Enhanced Mid-RangeのPIC
PIC12F1822 8ピン
PIC16F1823 14ピン
PIC16F1827 18ピン
PIC16F1938 28ピン
をアセンブラで初期化とI/Oを1秒毎にH/Lを繰り返すだけのサンプル上げておきました。
ttp://ux.getuploader.com/mcnc/download/100/PIC16F1xxxASM.zip
初めて使う際の参考にどうぞ
536774ワット発電中さん:2012/03/31(土) 14:42:37.82 ID:2bKbG7Mc
>>534
作っているうちに、デジタルフィルターかけたりFFTして特定の周波数帯だけ表示できる電圧計に拡張したくなるかもしれないので、
初めからdsPIC30Fxxにしたほうが良いと思う。
値段も400円位なので
537774ワット発電中さん:2012/03/31(土) 18:32:19.02 ID:kR1Ly9EN
dsPIC30シリーズは消費電力が大きいから、電池動作させたい場合は要注意。
電源電圧が3.3Vで問題なければdsPIC33シリーズの方が消費電力が低く、処理能力も高い。
538774ワット発電中さん:2012/04/01(日) 18:03:33.78 ID:Q47VLfTT
PICを使って、赤、緑、黄のLEDを1秒ごとに一つずつ光らせる信号装置を作りたいです。
基本的な信号機プログラムです。どうしたら良いでしょうか?
539774ワット発電中さん:2012/04/01(日) 18:12:42.34 ID:3S+H+hvp
作れば良い
540774ワット発電中さん:2012/04/01(日) 18:53:27.92 ID:FSc6O1tx
>>539
どうやって作ればいいでしょうか?
PICのゲートとLEDを直接つなげばいいのでしょうか?


PIC
□□
□□--抵抗--led(青)--0v
□□--抵抗--led(黄)--0v
□□--抵抗--led(赤)--0v
□□

こんな感じでよいでしょうか?
541540:2012/04/01(日) 19:58:44.35 ID:FSc6O1tx
信号装置は授業課題です。
使うPICは16F84Aです。アセンブラを使ってPICにプログラムを
書き込みたいです。具体的に回路がわからないのでよろしくお
ねがいします。
542774ワット発電中さん:2012/04/01(日) 20:39:04.96 ID:KeDRDpQI
>>541
課題をネットで聞くなよw
自分で考えなきゃ意味が無い。
っていうか、もうやめたら?学校を。
そういうスタンスじゃこの先も無理だと思うよ。
543774ワット発電中さん:2012/04/01(日) 20:54:38.58 ID:TcbNrSdl
>>541
回路はそれでOK。終わったも同然だな。
544774ワット発電中さん:2012/04/01(日) 21:02:44.10 ID:TcbNrSdl
>>541
ちなみにプログラムはこうだ。
サブルーチンをちょっと加えれば終わり。
楽したなw

 call init
loop
 movlw 4
 movwf portb
 call wait
 movlw 2
 movwf portb
 call wait
 movlw 1
 movwf portb
 call waitx
 goto loop
545774ワット発電中さん:2012/04/01(日) 22:04:59.48 ID:Lon0i9QY
【PIC24/dsPICシリーズ】16bitマイコン アーキテクチャの大幅な改良,同MIPS値のPIC18F以前と比べて数倍高性能

40ピン
-○dsPIC30F4013 \480 16Kw/2KB/1KB ADC12bit TMR5 UART2 SPI1 I2C1 PWM2 CAN
-×dsPIC30F3014 \500 8Kw/2KB/1KB ADC12bit TMR3 UART2 SPI1 I2C1 PWM2
28ピン
-◎24FJ64GA002 \330 21Kw/8KB/--- ADC10bit TMR5 UART2 SPI2 I2C2 PWM5
-◎24HJ12GP202 \260 4Kw/1KB/--- ADC12bit TMR3 UART1 SPI1 I2C1 PWM2
-○dsPIC30F4012 \460 16Kw/2KB/1KB ADC10bit TMR5 UART1 SPI1 I2C1 PWM3x2 CAN
-×dsPIC30F2020 \500 4Kw/512B/-- ADC10bit TMR3 UART1 SPI1 I2C1 PWM4x2
-△dsPIC30F2012 \350 4Kw/1KB/--- ADC12bit TMR3 UART1 SPI1 I2C1 PWM2
-◎33FJ32GP202 \320 11Kw/2KB/--- ADC12bit TMR3 UART1 SPI1 I2C1 PWM2
18ピン
-○dsPIC30F3012 \400 8kw/2KB/1KB ADC12bit TMR3 UART1 SPI1 I2C1 PWM2

共通
24Fシリーズ Vdd2.0-3.6V Max16MIPS (一部ピン5V入力可),I/Oリマップ
24Hシリーズ Vdd3.0-3.6V Max40MIPS (一部ピン5V入力可),I/Oリマップ
30Fシリーズ Vdd2.5-5.5V Max30MIPS DSP命令有,(5V動作可)
33Fシリーズ Vdd3.0-3.6V Max40MIPS DSP命令有,(一部ピン5V入力可),I/Oリマップ
546774ワット発電中さん:2012/04/01(日) 22:24:07.72 ID:Lon0i9QY
16bitのPIC 秋月は全然変化ないけどMicrochip自体は色々出てるんだよね
PIC24FxxKLxxxシリーズはDIP28,20,14まであり、Vcoreピン無くDIP14でI/O12本ある(I/Oリマップと5Vトレラント無?)
PIC24FVxxKAxxxシリーズはDIP28,20でVcore有るけど5V動作可(コチラモI/Oリマッフ無?)
新型のPIC24EやdsPIC33Eの70MIPS品でもDIP28版あるし
そう言えばPIC32もDIP28版あるね
547774ワット発電中さん:2012/04/01(日) 22:48:26.23 ID:WnUQc454
>>544
最初から完璧なソースを見せたら学生の勉強になりませんよ。
そのコード、今動かしたら一発で動くじゃないですか。凄すぎます。
548774ワット発電中さん:2012/04/01(日) 22:58:49.55 ID:4C+T6vpz
すみません。質問いいでしょうか?
PICを2つ使って、両方のポートを出力と入力として繋いだ場合は、やはり電流抑えるために抵抗は必要でしょうか?
もし必要なら抵抗値はどれくらい必要でしょうか?
よろしくお願いします。
549774ワット発電中さん:2012/04/01(日) 23:11:05.91 ID:WnUQc454
vcc共通で同一基板だったら直結でいい。
心配なら直列に100Ω入れとけ。
品種とかvccとか温度とかプルアップ抵抗で変わるし、自分で決められないなら入れても意味ないけどな。
550774ワット発電中さん:2012/04/01(日) 23:18:36.22 ID:Lon0i9QY
>548
通常なら必要ないと思うけど、ソフト上の誤動作で両方が出力状態になった場合を考えると
1kΩ位入れておけば良いかと思う(電位差5Vで5mAなのでIOL&IOHが10mA以上あるなら余裕)
あまり大きいと信号の伝達が遅くなるかと。
もしボードが違ってGNDも共通じゃないなら、抵抗じゃ無理なのでフォトカプラの出番
551774ワット発電中さん:2012/04/02(月) 00:37:14.13 ID:syCT7uDG
>>549さん >>550さん

ありがとうございます!
これで安心しました!
心置きなく工作できそうです!

552774ワット発電中さん:2012/04/02(月) 01:36:06.29 ID:1jawfykr
MPLAB v8.76
PCH V4.112
PIC18F4525

10MHzのセラミック発振子を使用
18S-03A-4(12.8MHz)水晶発振器の出力にVCC(5V)とGNDから10kΩの抵抗で分圧してRC0/T1OSO/T13CKIに接続
TIMER1を10msの割込にしてA2をトグル動作させてオシロで波形を測定

計算ではこれで50Hzの波形が測定できるはずだったんだけど、実測155Hzぐらい
それとH4を有効にして40MHz動作させると実測174Hzぐらいになる
やりたい事は動作させるクロックと時間をカウントさせるクロックを分けて正確な時間の時計が作りたい
それとH4の設定をしたときに周波数のズレが出た原因も知りたい
原因わかる方お願いします

12.8MHzの出力をOSC1/CLKI/RA7に繋いで下記部分を変更すると計算通り50Hzの波形が測定できた
#fuses NOWDT,NOPROTECT,NOPUT,BROWNOUT,NOLVP,MCLR,NOIESO,NOFCMEN,NOPBADEN,EC//HS,H4
// setup_timer_1(T1_EXTERNAL | T1_DIV_BY_1);
setup_timer_1(T1_INTERNAL | T1_DIV_BY_1);

/****************************************
* LED時計
***************************************/
#include <18f4525.h>
#fuses NOWDT,NOPROTECT,NOPUT,BROWNOUT,NOLVP,MCLR,NOIESO,NOFCMEN,NOPBADEN,HS//,H4
#use fast_io(B)

#INT_TIMER1
void intval()
{
set_timer1(33535);
output_toggle(pin_a2);
}

///// メイン関数
void main()
{
set_tris_a(0x00);
set_tris_b(0x00);
set_tris_c(0x01);
set_tris_d(0x00);
set_tris_e(0x00);

//クロック設定
setup_oscillator(OSC_NORMAL);

// setup_timer_1(T1_EXTERNAL | T1_CLK_OUT | T1_DIV_BY_8);
setup_timer_1(T1_EXTERNAL | T1_DIV_BY_1);
// setup_timer_1(T1_INTERNAL | T1_DIV_BY_1);

SET_TIMER1(16000);

//割り込み設定
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);

while(1) //永久ループ
{
output_toggle(pin_a3);
}
}
553774ワット発電中さん:2012/04/02(月) 08:21:01.09 ID:loVlNPjx
>>552
割り込みが来たらtimer1の値を更新しているけど、timer1をセットするのに8ビットずつセットするので、
その時の条件によっては、誤差がでるので、特に外付け発振器が早い場合は注意が必要ですね。
一番良い方法は最初に設定してフリーランにさせるのが良いです。
コンパレータ割り込みが一番正確です。

提示コードはCCS-CでPIC18Fですが、PIC16のHitech PICCで書かれた参考例が
http://airvariable.bbs.fc2.com/?act=reply&tid=4520156#10458256
にあるので、こちらが参考になると思います。
CCSCと構文が違いますが、やっていることは理解出来ると思います。
554774ワット発電中さん:2012/04/02(月) 17:16:07.58 ID:KJd9ovm7
>>535
ありがとー。
初心者なので、とても勉強になります。
555774ワット発電中さん:2012/04/02(月) 19:18:52.58 ID:O/unWBis
質問します
16F690はRBのピンがが4から7までしかありません。
これを使ってLCDを4bit制御モードで使えるんでしょうか?
556774ワット発電中さん:2012/04/02(月) 19:27:46.14 ID:D9ZIhnZV
また学校の課題か
557774ワット発電中さん:2012/04/02(月) 19:37:49.21 ID:Xg6cwc0r
>>555
LCD4ビットモードというのは何処から出てきた数字なのかね?
558774ワット発電中さん:2012/04/02(月) 19:43:12.20 ID:O/unWBis
>>556
okwebでもそうだが質問してすぐレスするやつは茶化したいだけのが多いな。
ぜんぜん答えてくれないで、文句ばっかり。
559774ワット発電中さん:2012/04/02(月) 19:50:22.55 ID:D9ZIhnZV
>>558
「ググレカス」って言って欲しいのかなぁ?
560774ワット発電中さん:2012/04/02(月) 19:50:36.71 ID:6t8i85xH
>>555
4bit制御モードは、データ線が4本ということ。
別に制御線も必要だよ。
561774ワット発電中さん:2012/04/02(月) 19:51:43.31 ID:mYhkFi4B
>555
SC1602等のHD44780互換チップ載ったLCDモジュールなら4bitモードで
DB7-4の4本とRSとEの6本が制御できれば可能。
ソフト的にはめんどくさくなるけど、DB7-4に割り当てるPIC側のピンは
同じポートである必要も連続するBitである必要も無い。
出力モードにできるI/Oピンが6本あればOK
562774ワット発電中さん:2012/04/02(月) 20:11:29.14 ID:O/unWBis
>>561
どうもありがとうございます。できるんですね。RSとEはPORTAでやりますけど。
563774ワット発電中さん:2012/04/02(月) 20:12:50.06 ID:O/unWBis
>>559
初心者いじめて楽しい?
564774ワット発電中さん:2012/04/02(月) 20:24:31.21 ID:D9ZIhnZV
>>563
「他人に聞く前にまず自分で調べなさい」とか先生に言われなかった?小学生かなんかの頃に。
565774ワット発電中さん:2012/04/02(月) 20:51:48.06 ID:IX4NzaxJ
>>555
上位と下位の 4bitを swapすれば良いんだよ
たしか
566774ワット発電中さん:2012/04/02(月) 21:24:56.27 ID:oHR91Ruv
それで、swapしたことをLCDコントローラーにどう伝えるのですか?
567774ワット発電中さん:2012/04/02(月) 21:46:14.82 ID:bgo3yXr8
東のほうが面白かったんだが
568774ワット発電中さん:2012/04/02(月) 22:53:53.33 ID:IX4NzaxJ
>>567
おもしろいこと聞くね
PORTAに movwfしてどうする?
569774ワット発電中さん:2012/04/02(月) 23:02:35.46 ID:IX4NzaxJ

ごめんおもしろくなかった。誰か頼んだ
570774ワット発電中さん:2012/04/03(火) 00:23:14.01 ID:2NR7OYTb
>>564
どこで調べればよかったの?おしえてみ?
571774ワット発電中さん:2012/04/03(火) 01:41:32.68 ID:AFr1sh++
>>570
>どこで調べればよかったの?おしえてみ?

小学校では先生にそんな口聞いてたの? そりゃ落ちこぼれる筈だわ。
572774ワット発電中さん:2012/04/03(火) 02:38:37.11 ID:nW2DkWqK
>>570
混じれ酢してあげよう。
まず、近所の図書館(最低でも市立図書館規模)に行く
電子工学のコーナーに何か1冊はPICの本がおいてあるだろう。
そこからスタートだ!さあがんばれ。
573774ワット発電中さん:2012/04/03(火) 02:40:02.55 ID:nW2DkWqK
そうそう、見た目でなくても、書庫にあるときがあるから、よく探すことだね。
574774ワット発電中さん:2012/04/03(火) 08:05:46.12 ID:GFE3DbOi
>>564
お前は、価値無し
575774ワット発電中さん:2012/04/03(火) 08:26:31.56 ID:QBxfcy7Q
生きる資格がないなんて憧れていた逝き方
576774ワット発電中さん:2012/04/03(火) 08:27:10.73 ID:bi6ZWeyH
>>564
その先生は社会を知らない。
577774ワット発電中さん:2012/04/03(火) 10:08:22.59 ID:QANpmsQF
ID変えながら一人で楽しそうですねえ
578774ワット発電中さん:2012/04/03(火) 13:13:48.87 ID:eDunSuyk
ここにも春厨が
579774ワット発電中さん:2012/04/03(火) 13:32:46.67 ID:GFE3DbOi
俺は、変えてないぞ
580774ワット発電中さん:2012/04/03(火) 22:26:36.12 ID:cjMAR8CN
>>571
「おしえてみ?」にきれたの学生さん。
ただで教えてるからって尊大な態度をとってりゃ嫌われる、って先生におそわらなかった?
581774ワット発電中さん:2012/04/03(火) 22:30:09.63 ID:fv4KsFhk
雑誌 デジモノステーションの5月号に7セグLED時計
が載ってた
582774ワット発電中さん:2012/04/03(火) 22:32:47.39 ID:VE3V1YFk
と、いつも人に言われてるのね
583552:2012/04/03(火) 23:01:19.24 ID:DaBzHAq3
>>553
ようやく原因わかりました。
水晶発振器を繋いでたT13CKIの入力はデジタルのシュミットトリガになってたのが原因でした。
T13CKIのVILがVSS〜0.3VDD、VIHが1.6〜VDD
多分この辺りで不安定になっていたのかも?
T1OSIは200kHzまでしか受け付けないので使えない
結局はOSC1/CLKI/RA7に入れるしか無いみたいです。

ありがとうございました。
584552:2012/04/04(水) 00:09:18.88 ID:v/dVphMD
追加実験
T13CKIに別なPICから1kHzの信号を入れてやると思った時間の割込になりました。
1kHzはオシロを見ながら調整して出力
set_timer1(65526);
output_toggle(pin_a2);
これで50Hzになりました
585774ワット発電中さん:2012/04/04(水) 00:32:11.57 ID:4mfsVuz2
>>580
基地外?
586774ワット発電中さん:2012/04/04(水) 01:06:17.50 ID:EPRrdOG4
>584
余計な御世話かもしれないけど、割込み中にTMR1を固定値に書き換えるのはあまりよろしくない
アセンブラ的な話になるが、割込みのタイミングは割込み発生時に実行中の命令が終わってから発生する
PIC18Fは命令によって1サイクルと2サイクル命令があり、2サイクル命令の前半で割込みが発生すると
割込みに入るタイミングが通常より1サイクル遅くなる。
1サイクル遅くなっているのに次の割込みまでの時間を通常と同じように設定すると、その1サイクルは蓄積
されるズレとなってしまう。2サイクル命令以外にも割込み禁止でも同様というかもっとひどいズレが発生する

上記を防ぐため通常は、CCPの機能で"Compare mode, trigger special event"を使う
TMRが設定値になったら自動で0になり割込みも発生する(TMRの割込みではなくCCPの割込み)。
割込みに入るタイミングが何サイクル遅れても(1周期分65536超えたら無理だけど)TMRもそのプラスされて
いるのでズレが発生しない。
587774ワット発電中さん:2012/04/04(水) 01:15:56.55 ID:lL/7Iaeh
>>580
はよ図書館いって勉強してこい!
時間の無駄だぞ。
図書館をなめるなよ、度肝ぬくぞ!
588774ワット発電中さん:2012/04/04(水) 01:49:31.02 ID:v/dVphMD
>>586
命令の実行中とか全然考えてませんでした。
Compare mode, trigger special eventを使ってのタイマーリセットの実験ができました。
指定した時間毎にリセットをしてCCP1の割込で出力をトグル動作させ50Hzの出力が測定できました。
ありがとうございました。
589774ワット発電中さん:2012/04/04(水) 13:45:24.45 ID:NB9lAmer
田舎の図書館はなめている。PIC本が皆無。
590774ワット発電中さん:2012/04/04(水) 14:01:45.80 ID:FRpxm8rF
時間はかかるけど、リクエストができる図書館もあるよ。
591774ワット発電中さん:2012/04/04(水) 14:02:37.23 ID:FRpxm8rF
新規購入リクエストね。
あるいは図書館同士の連携で他の場所から持ってこれるシステムの場所もある。
592のうし:2012/04/04(水) 14:04:21.43 ID:X8dUDeW0
『PICの本が皆無』ではなく、PICのは股間氏のしかない、かとオモタ。
593774ワット発電中さん:2012/04/04(水) 14:22:44.01 ID:eM6Ga0+w
ちょいちょい質問・・・
複数の回路と複数のボタンがあって
「このボタンを押したらこの回路とこの回路がONになる」
とか自由に設定して使えるようなのって、PICで出来る?

594774ワット発電中さん:2012/04/04(水) 14:24:52.52 ID:NB9lAmer
リクエストはできるしほぼ100%通るけどしないよ。
急に注目され始めたジャンルでも無し、今までだれも必要としてない本をリクエストしてもオレ以外借りないからな。
税金は有効に使うべし。
595774ワット発電中さん:2012/04/04(水) 14:36:16.29 ID:rmb8n+uW
ダイオードマトリクスで出来なくね
596774ワット発電中さん:2012/04/04(水) 14:38:22.54 ID:XJxDuVrY
マトリクススイッチャーだろ
597774ワット発電中さん:2012/04/04(水) 16:02:05.27 ID:xAvZt1Fm
いつの間にかスルー検定が実施されたか
598774ワット発電中さん:2012/04/04(水) 21:06:27.84 ID:Wm88Phxd
>>593
できるよ。
599774ワット発電中さん:2012/04/04(水) 22:42:52.77 ID:SuK7jN1W
すみません。PICマイコンに興味あるのですが、開発言語は何が良いでしょうか?
いろいろネットで調べるとC言語ばかり出てくるのですが、そんな難しいものは全くのド素人でして・・・
一つ気になるソフトがあって、PICBASICPROというBASIC言語のものです。
これならなんとか行けそうな気がするのですがプロのみなさんはどれがいいでしょうか?
本格的にPICで何かをやりたいのではなく、あくまで日曜工作の範囲内での話しでして
それから、BASIC言語については、高校の頃にポケコンで遊んだレベルです。

600774ワット発電中さん:2012/04/04(水) 22:56:05.49 ID:3PB2AJGZ
つアセンブラ
601774ワット発電中さん:2012/04/04(水) 23:04:12.84 ID:EBFr6hgn
>>599
PICに限らず、やりたいことが出来る言語なら、なんでもいいと思うが。
BASICで出来ることしかしないってんならソレでよし。

でも、こんな微妙なBASIC覚えるなら、C言語を覚えるほうがよっぽどいい気もする。
http://www.microtechnica.tv/support/manual/pbpman_260.pdf
602774ワット発電中さん:2012/04/05(木) 00:00:17.57 ID:9hmJ0aUQ
ポケコンでBASICやったくらいなら、今時の変なBASICを
覚えるのも、C覚えるのも、手間はあんまり変わらないんじゃ?

BASIC             C

IF A=1 THEN          if (A==1)

FOR A=1 TO 10         for (A=1;A<=10;A++) {
NEXT A             }

ON A GOTO 100,200       switch (A) {
100 ....            case 1:
200 ....            case 2:
300              }

WHILE A<10           while (A<10) {
WEND              }
603774ワット発電中さん:2012/04/05(木) 00:38:13.94 ID:9hmJ0aUQ
100               do {
200 IF A<10 THEN 100       } while (A<10);

GOSUB 100            funcname();
100               funcname(){
200 RETURN            }

ところで、BASICで使うのなら、BASIC Stampというのもありますね。
ttp://akizukidenshi.com/catalog/g/gM-00189/

#FX-702P愛用していました
604774ワット発電中さん:2012/04/05(木) 02:23:52.26 ID:SIznKR86
謝れ!
502Pすら買えなかった俺に謝れ!!
605774ワット発電中さん:2012/04/05(木) 03:23:40.98 ID:Ke/srott
502Pはアセンブラっぽい米
606774ワット発電中さん:2012/04/05(木) 04:03:13.56 ID:f8hzBhsH
シャープの緑色蛍光表示管のプログラム電卓も、忘れないでください。
fx-502より小さくて、よかった。
607774ワット発電中さん:2012/04/05(木) 09:05:55.73 ID:4wVqGu/i
PB-100の学校向けにした奴が関数電卓代わりですた
608774ワット発電中さん:2012/04/05(木) 12:37:27.83 ID:9hmJ0aUQ
>>604
すまない。502Pは先輩が持っていたので自分も欲しかったが、
すでに廃盤になってたから602Pを買った。
609774ワット発電中さん:2012/04/05(木) 12:56:29.36 ID:UG3hEks9
俺はPC-G801なので仲間はずれだな。
って、なんかポケコンスレと化してるな

今だとPICの勉強もポケコンで…と思ったが、ポケコン自体が絶滅してましたか?
610774ワット発電中さん:2012/04/05(木) 13:24:10.84 ID:9hmJ0aUQ
>>606 >>609
PC-1211なら、友達のを借りて使ったことあるヨ。RPG作ってあげたら、喜んでた。

しかし、>>599のように、組み込みマイコンからプログラム言語に入るっていうケース、
結構多いのかな。で、そういった場合にBASICは取っつきやすいのかな?ポケコンの
時代なんかだと、高級言語というとBASICしか使えないケースがほとんどだったから
まずBASICだったけど、今なら、初めて学ぶプログラミング言語って、何が良いのだろう?
611593:2012/04/05(木) 14:11:50.07 ID:FvXHBcTp
>>598
ありがとう。
本を買ってやってみるよ。
612774ワット発電中さん:2012/04/05(木) 15:59:37.15 ID:E1LIFHjM
使ったこと無いんだけど mikroBasic ってどう?


>>609 ポケコン自体が絶滅してましたか?

PC-G850VS(2009年発売)は現行商品。
ttp://www.sharp.co.jp/calc/product/pcg850vs/
ttp://eleshop.jp/shop/g/g2AG413/
大学生協や工業高校では安く買えるそうだ。

他に、TI社のグラフ関数電卓はBASICプログラムが走るので
ポケコンのような使い方も可能らしい。
ttp://education.ti.com/educationportal/sites/US/productCategory/us_graphing.html
ttp://education.ti.com/calculators/products/US/Nspire-Family/
613774ワット発電中さん:2012/04/05(木) 22:05:01.21 ID:2KZNpILv
PIC24EPxxで2$台。 70MIPSだってよ。 Cortex−M0+意識してかな?
ペリフェラルライブラリ等々エラッタ祭りで、今は人柱吊るし上げの最中だが、魅力あるな。
614774ワット発電中さん:2012/04/05(木) 22:10:25.19 ID:Ke/srott
英数字にマルチバイト文字を使う奴は信用ならん
615774ワット発電中さん:2012/04/05(木) 22:22:53.63 ID:2KZNpILv
>>614
2chで信用? ググレカス!
616774ワット発電中さん:2012/04/05(木) 23:03:10.43 ID:i8V5b85A
70MIPSともなると旧16Fと比べてMIPS値分だけで14倍
8bitPIC→16bitPICで同MIPSでも性能は数倍あるだろうから
実質50〜100倍位速くなるのかな。
趣味の電子工作だと、旧16Fの5MIPSでも充分な事多いのに
何に使えばいいんだろう…
617774ワット発電中さん:2012/04/05(木) 23:08:14.23 ID:PvE/XldT
PICでポケコンって作れるのかなぁ?
618774ワット発電中さん:2012/04/05(木) 23:24:44.30 ID:HGkvrQHR
年は取りたくないな。 特にID:2KZNpILvみたいなやつ
619774ワット発電中さん:2012/04/06(金) 00:37:17.14 ID:L2Pv7aEC
>>614

秋月… 
620774ワット発電中さん:2012/04/06(金) 00:38:57.09 ID:kSqzHnDx
細かい言語仕様の違いは、その都度調べるしかないよな
Cもperlもrubyもpythonもそれぞれ便利なので、どれか一つではなく全部使う
そして毎回間違う
621774ワット発電中さん:2012/04/06(金) 12:31:00.86 ID:rbA8ojPg
>>617
キーボードはどうする?
622774ワット発電中さん:2012/04/06(金) 13:13:17.89 ID:BParJkqr
I/Oや用途的に、PICでやる意義が皆無だな。
623774ワット発電中さん:2012/04/06(金) 13:32:23.02 ID:2J3oDx4z
>>621
シャープの電子手帳用のキーボードが意外にいい


と思って5個くらい買い集めたが、工作してない。
624774ワット発電中さん:2012/04/06(金) 14:34:48.63 ID:K2YWbNZW
>>621 >>623
そだね。キーボードの良いのが手に入らないと、何ともならないな。
それが手に入れば、ちょっと作ってみたいかも。
625774ワット発電中さん:2012/04/06(金) 14:43:43.31 ID:K2YWbNZW
4月1日のグーグルみたいに、モールス信号でいくなら、キーは一個で良いなw
626774ワット発電中さん:2012/04/06(金) 14:49:41.92 ID:kSqzHnDx
PS2のキーボードってPICからでも余裕で扱えるのな
627774ワット発電中さん:2012/04/06(金) 16:18:31.56 ID:2J3oDx4z
ただのシリアルだからね。作例はたくさんあるよ。
628774ワット発電中さん:2012/04/06(金) 17:17:58.57 ID:biEkUUPj
Wikipedia見ると通信速度が決まってないみたいだけど、

PS/2 connector - Wikipedia
http://en.wikipedia.org/wiki/PS/2_connector
> Data signal Serial data at 10 to 16 kHz with 1 stop bit, 1 start bit, 1 parity bit (odd)

CLK信号の幅とか計って柔軟に対応できるようにする必要とかあるのかな?

テストとか考えると結構大変そうね。
629774ワット発電中さん:2012/04/06(金) 18:12:46.17 ID:2J3oDx4z
何のためのクロックなんだよ
630774ワット発電中さん:2012/04/06(金) 18:20:06.28 ID:Rrgq/6tt
たぶんだけど、同期UARTでやってるんじゃないの?
631774ワット発電中さん:2012/04/06(金) 18:35:04.79 ID:biEkUUPj
なるほど。そういう機能があるのがあるのか。
632774ワット発電中さん:2012/04/07(土) 00:17:05.14 ID:yRewwhd4
PS/2の資料読んでるとデータは11bit長のようだけどPIC16Fのデータシートみると
USART同期モードは9bit長までしか対応していない様に読めた。
全部ソフトでやらないとだめっぽい
633774ワット発電中さん:2012/04/07(土) 00:22:49.32 ID:4RECPDZX
同期ならソフトでも楽勝のような
634774ワット発電中さん:2012/04/07(土) 00:37:41.95 ID:VREL8i/j
>>598
どっ、どうやるの?
参考になるHPとかない?
635774ワット発電中さん:2012/04/07(土) 01:01:40.35 ID:mkurBQzW
複数の回路と複数のボタンで
「このボタンを押したらこの回路とこの回路がONになる」
とか自由に設定して使えるようなプログラム書けばいいんじゃね?
636774ワット発電中さん:2012/04/07(土) 01:49:10.89 ID:zEYpasr0
>>634
お気持ちは分かりますが、漠然としすぎています。
あなたのレスから判断して、それが出来るようになるには
それなりの時間がかかると思われますが
まずは、マイコンの入門書などを購入して、ランプがチカチカ点滅する。
そんな簡単な物からはじめてみてください。
夢をかなえられるように努力を重ねていれば、必ずいつか実現しますよ。
637774ワット発電中さん:2012/04/07(土) 01:55:59.97 ID:Tb68nFf9
>>634
とりあえず図面うpしてみたら?
PICじゃなくてもロータリースイッチとかリレーでもできるかもしれないし
638774ワット発電中さん:2012/04/07(土) 02:36:05.35 ID:U+0yJD0s
ちょっと質問です。 WDTって、どういう場面を想定して使う物ですか?

1)自分の組んだプログラムにバグがあって永久ループに入っても、リセットされる。

なのか、あるいは

2)PICのロットによっては、まれに誤作動でフリーズする場合があり、そういう場合にリセットで回避する。

なのか。 WDTを使っている人は実際どういう場面で使っているのでしょうか?
639774ワット発電中さん:2012/04/07(土) 02:41:40.54 ID:yEmTO9Do
>>638
>ちょっと質問です。 WDTって、どういう場面を想定して使う物ですか?

予定外の処理をジャンジャカされるよりは止まった方がまだマシという判断ダヨ
640774ワット発電中さん:2012/04/07(土) 02:41:49.89 ID:ik85DN42
>>638
もちろんソフト的な問題からの復帰という使い方もあるけど、それ以上にハードトラブル
(サージが乗って誤動作しちまったとか…)に対する自己復帰手段として使ってる。
641774ワット発電中さん:2012/04/07(土) 03:38:16.88 ID:xeA8hBKG
転ばぬ先の再起動ならぬ。転ばぬ先のWDTなんちゃって
642774ワット発電中さん:2012/04/07(土) 03:47:05.61 ID:Iku+AC8n
>>638
想定外を想定するもの。
643774ワット発電中さん:2012/04/07(土) 11:22:56.26 ID:X6TKLAN+
サージとか宇宙線とかの、再現性のないエラーに対する防護だろうね
644774ワット発電中さん:2012/04/07(土) 12:46:17.08 ID:4wrzxF+6
WDTだけでは、データ破壊が訂正されないで誤動作したままになることは、防げないよ。
645774ワット発電中さん:2012/04/07(土) 12:53:12.11 ID:lMKPtL3h
破壊されたデータ、というか、WDTがかかった時点で内外にかかわらず全データを破棄すればいい。
プログラムそのものが破壊されたら知らんけど。
646774ワット発電中さん:2012/04/07(土) 13:38:07.75 ID:yRewwhd4
趣味の工作レベルで使う分にはWDTは、あまり使い道が無いね。
デフォルトでONなのも初心者がはまる事多いし
647774ワット発電中さん:2012/04/07(土) 14:06:41.76 ID:U+0yJD0s
>>639-646
どうも、有り難う。具体的にどういった誤動作を想定するのかと思ったのですが、
サージ乗ってとか宇宙線とか含めて、予想できない不具合が沢山有りそうですね。
今まで長時間動かし続ける用途で使っていなかったからWDTは使ってなかったの
だけれど、数時間連続で以上使うケースが出てきたので、オンにしてみます。

WDTオンにしても不具合が出ない設計なら、オンにしとけって感じでしょうか。
648774ワット発電中さん:2012/04/07(土) 15:06:46.40 ID:x0o85wmX
>>646
工作レベルなら起動電流が足りなくてCPUが正常起動できなくてもWDTが再リセットして事なきを得ているのを気付かない人も居る
649774ワット発電中さん:2012/04/07(土) 15:34:14.47 ID:4wrzxF+6
>>645
WDTに引っかからない場合もあるってこと。
650774ワット発電中さん:2012/04/07(土) 15:37:05.31 ID:yRewwhd4
>648
それってWDTの悪い例の様な…
異常が高頻度で起きるなら対策すべきで、WDTなんて開発・デバッグがほぼ終わって
最後の最後にONすればいいと思う。

648の例ならPWRT(Power-up Timer)やリセットICの役目だろうし
651774ワット発電中さん:2012/04/07(土) 15:52:18.41 ID:U+0yJD0s
>>650
>異常が高頻度で起きるなら対策すべきで、WDTなんて開発・デバッグがほぼ終わって
>最後の最後にONすればいいと思う。
説明不足ですみません。まさに、そのケースです。もう出来上がってるんです。
で、実運用に持って行く前に、CLRWDTを入れてWDTオンにした方が良いかなと思って、
聞きました。
652774ワット発電中さん:2012/04/07(土) 16:01:57.33 ID:OVpG7EhO
>>647
> WDTオンにしても不具合が出ない設計なら、オンにしとけって感じでしょうか。
不具合の出る設計ってどんなんだ?
653774ワット発電中さん:2012/04/07(土) 16:07:00.84 ID:U+0yJD0s
>>652
リセット直後の動作が、周辺機器との兼ね合いでちょっとした問題を起こす
可能性もあるんですよ。むしろ、PICがフリーズしてくれたままの方が、
リセットされるよりもまだましかもしれないというケース。
654774ワット発電中さん:2012/04/07(土) 16:24:41.35 ID:yRewwhd4
>652
メインループ以外で色々と時間待ちや長い処理する場合
後から個別にCLRWDT入れるのが大変な場合とかじゃない
655774ワット発電中さん:2012/04/07(土) 16:42:47.11 ID:OVpG7EhO
>>654
構造的にダメっぽくない?
>>653
何か起こったときって、必ず「フリーズしてくれたまま」なの?
何もしないで固まってほしいなら、WDTリセットかどうかフラグを見て、
割り込みを禁止して、必要なら安全処理をして、無限ループ。
656774ワット発電中さん:2012/04/07(土) 16:53:57.06 ID:U+0yJD0s
>>655
>WDTリセットかどうかフラグを見て
なるほど。そんな方法があるんですね。ちょっと、調べてみます。
その手は使えそう。どうも、有り難う。
657774ワット発電中さん:2012/04/07(土) 17:40:16.97 ID:OuxyqCnM
タイマー割り込みでCLRWDTやって、このままだとメインの無限ループを検出
できないから、割り込み処理内でフラグを立てて、それをメインの処理でクリア
するようにして検出してる。
658774ワット発電中さん:2012/04/07(土) 17:49:55.48 ID:yRewwhd4
>655
>構造的にダメっぽくない?
元々WDTを考慮しない作りだと、そんなものじゃないか?
人の入力待ちとかで他にやる事ないなら割込みとかよりそこのループで入力or10秒待つとか
普通にしちゃうよ。

WDTが誤動作を絶対的に無くせるものならともかく、>644が言うようにRAM上のデータが変化
したとかは直接は捕まえられないし、それを気にしたらデータの二重化等までしなきゃだめだし
個人の趣味レベルならWDTの必要性が感じられないんだよね
659774ワット発電中さん:2012/04/07(土) 18:27:12.60 ID:/BHKCfhr
> 元々WDTを考慮しない作りだと、そんなものじゃないか?
まぁ、何でもアリではあるけれど。

> 人の入力待ちとかで他にやる事ないなら割込みとかよりそこのループで
> 入力or10秒待つとか普通にしちゃうよ。
例外的な場所が判っているなら、そこに入れればいいね。ありすぎて困るような
スパゲティでは、「個人の趣味レベル」として厳格に秘匿しておきたい一品になると思う。
ダメとは言ってない。個人的には恥ずかしくてダメだけど、みんなはどう? と問うただけ。

> RAM上のデータが変化 したとかは直接は捕まえられないし
「ヤバいことが何か起こった」ときに困るなら使うし、そうでなければ使わなくていい。
ただそれだけであって、「データが変化」とWDTをことさらつなげて論じるのは如何なものかね。

> 個人の趣味レベルならWDTの必要性が感じられないんだよね
コントロールするエネルギー量次第かな。
燃えてからでは、物理的経済的以外に精神的ショックも大きい。
660774ワット発電中さん:2012/04/07(土) 18:41:49.60 ID:yRewwhd4
>659
私はてっきり>643でデータの変化(破壊)にWDTだと思っていたのだが
プログラムのバグ等をメイン想定しているの?
661774ワット発電中さん:2012/04/07(土) 20:19:21.74 ID:4RECPDZX
予期しない誤動作に対する安全装置を組み込むこと自体が趣味の範囲を超えてるから、
そういう使い方ならWDTは不要だけど、
もっと積極的にWDTが動作して当たり前な使い方なら使い道はありそう
662774ワット発電中さん:2012/04/07(土) 21:52:01.99 ID:0o5jFpnG
> 予期しない誤動作に対する安全装置を組み込むこと自体が趣味の範囲を超えてるから、
「趣味の範囲」ではなく「俺様のLEDチカチカ趣味の範囲」と書き換えた方がいい。
663774ワット発電中さん:2012/04/07(土) 23:03:31.92 ID:4RECPDZX
当然、そのレベルの人も排斥はしないので安心してくれ
664774ワット発電中さん:2012/04/08(日) 00:04:32.19 ID:GlqELCJc
ライフゲーム、あったよね。
あんな風にざくざく繋げられる基板がトラ技から出たけど、それはともかく。
このスレでも一時期盛り上がったけど、誰か作った人いる?
665774ワット発電中さん:2012/04/08(日) 04:09:11.76 ID:VQw0tLPa
CPUは暴走するものである。
666774ワット発電中さん:2012/04/08(日) 11:56:14.93 ID:SIdOOYvh
趣味の範囲を超えるのでお引き取りください。
667774ワット発電中さん:2012/04/08(日) 14:10:38.23 ID:FF79y4aY
wdtリセットしながら暴走させる自信あります
668774ワット発電中さん:2012/04/08(日) 14:40:55.56 ID:SmQE+r6Q
そこでWCTですよ
669平井:2012/04/08(日) 14:45:15.21 ID:Xr89hqB0
レバーを食べると妊婦さんは奇形児が産まれやすくなる。レバーがビタミンAを過剰に含んでるのが原因で過剰な摂取は発癌率もUPする
レバーを食べなきゃ普通に生活してる分には問題ありません。 過剰症は頭痛吐き気めまい他多数あるのだけど、個人差があるので全く症状が出ない人も居ます。産婦人科でも教えてくれるますが、全ての産婦人科が教えてくれるとは限らないという事を覚えておいて欲しい。
670774ワット発電中さん:2012/04/08(日) 21:12:09.52 ID:Hy5ewXx2
>>664
新参だけど。トラ技のライフゲームってどんなの?
671774ワット発電中さん:2012/04/08(日) 21:49:24.47 ID:+y2W+Fea
生物シミュレーションゲーム
672774ワット発電中さん:2012/04/08(日) 22:01:40.28 ID:Hy5ewXx2
>>671
ライフゲーム自体は分かるけど…
例えば1ユニットが8x8セルとかで、
繋げるだけいくらでも拡張出来るように
なっているとかを勝手に想像してみた。
673774ワット発電中さん:2012/04/08(日) 22:04:14.83 ID:aX1huCHk
ARMのMARYのこといってるの?
674774ワット発電中さん:2012/04/08(日) 22:08:08.14 ID:haas4PNO
>>670
> トラ技の
ライフゲームじゃなくて、定型にモジュール化した基板を好きなように
ガシガシ繋げて使う、ってやつ。OLEDとかマイコンとか、いろいろあった。

ライフゲームのは>>672の想像通り。つべかどっかに映像もあったはず。
675774ワット発電中さん:2012/04/09(月) 01:21:14.34 ID:Bouo8iEt
ライフゲーム、なつかしいな。
あんま関係無いけどCOREWARSも思い出したよ。
アスキーに載ってて、当時まだ学生だったけどコレやりたくて
初めてPC買ってもらったんだわ。
676774ワット発電中さん:2012/04/09(月) 01:28:35.46 ID:rZmox9MG
RedCodeやったことがある、あれもある意味アセンブラだな…
とか言ってた奴居たな。
677774ワット発電中さん:2012/04/09(月) 07:03:22.51 ID:JnJWTih9
非ノイマン型corewars
678774ワット発電中さん:2012/04/09(月) 21:05:57.06 ID:tkCxuLNv
純粋関数型言語版CoreWars
679774ワット発電中さん:2012/04/10(火) 08:15:14.16 ID:mFizX0KS
ウィキペ見てみたが、よくワカランかった。
もっと面白さを魅力的に解りやすく書いてるページはないのか。
680774ワット発電中さん:2012/04/10(火) 11:47:16.32 ID:qP8IcKbT
フロッピーのコピープロテクトで自己書き換えする奴があったな
681525:2012/04/10(火) 21:49:52.06 ID:ON0BWRtr
PICKIT3と 18F25K80来ました
秋月ライターは、ブレッドボードと秋月ライター間を行ったり来たりで不便でしたが
PICKIT3は、ブレッドボード上で書き換えられて便利なのは確認しました
デバッグの鬼な方は、すぐにでも PICKIT3に変えた方が幸せになれます

アッセンブラで作ってみることにしたんですが、データーシートと格闘中です

682774ワット発電中さん:2012/04/10(火) 22:16:01.08 ID:T/PeGQsI
そうですか
683774ワット発電中さん:2012/04/11(水) 01:27:22.30 ID:f66CBc6A
俺も最近pickit3買ったんだがスゲー便利。よけいなことだけど、akiライターはこれからどうすんだろ。
684774ワット発電中さん:2012/04/11(水) 01:41:41.98 ID:i4K4U9Bg
どうもしないと思う。
公式のライターが無い・もしくは有っても高価という状況でなら、
安価なライターというニッチでもうけることが出来る。けれど、
この値段で公式ライターが販売されている現状だと、独自のライターを
販売しても、もうけにならない。
685774ワット発電中さん:2012/04/11(水) 09:47:08.98 ID:Ucd4y0ho
在庫処分と、現ユーザ向けサポートだけになるんじゃない?
686774ワット発電中さん:2012/04/11(水) 10:53:36.15 ID:HvOTrRNJ
古いPICに書けないのなかったっけ?
687774ワット発電中さん:2012/04/11(水) 19:50:02.56 ID:PUAW79UL
16f84a+PICC LITEで作ってるんだけど、クロックが変だ。。
セラロック10M,20Mで試したけど動かない。。
しかしセラロック外してosc1に100k挟んで5V入れると何故か動くけど、一秒くらいでリセットかかる。。三個くらい試したけど全部そうだったorz
どうやったら普通に動くんだ。。誰か助けて。。
688774ワット発電中さん:2012/04/11(水) 20:06:13.33 ID:lEpdMVVX
>>687
>三個くらい試したけど全部そうだった

安心しろ。PICは正常動作してるっぽいぞ。
689774ワット発電中さん:2012/04/11(水) 21:54:47.22 ID:5WBRAz/l
>>687
内蔵クロックで動いて、WDTでリセット?
690774ワット発電中さん:2012/04/11(水) 22:13:00.17 ID:IQB4r5eM
>687
君を助けられるのは君だけだ。落ち着いて状況を再確認すべし、まず
>セラロック10M,20Mで試したけど動かない。。

>しかしセラロック外してosc1に100k挟んで5V入れると何故か動くけど、一秒くらいでリセットかかる。。三個くらい試したけど全部そうだったorz
は全然違う状況のはずだ。
前者はクロックにセラロックをつないでいるが、動作していないとの事だが
・どうやって動作していないと判断したのか?
・なぜクロックだと思ったのか?

後者については、確認のためにしたのだろうが接続方法が正規でないのだから
何の確認にもなら無いよ。それと16F84Aには内蔵クロックは無い
691774ワット発電中さん:2012/04/11(水) 23:07:22.79 ID:mhy0a3NX
16F86Aのデータシート見ると入力クロックはDC〜になってるけどDC入力したらどうなるんかね?止まるだけだと思うけど
692774ワット発電中さん:2012/04/11(水) 23:13:37.61 ID:Bq6IXln1
大昔は止められないマイコンが普通だったから
DC〜というのは止められますよという、ある種の性能の表明なのだ
693774ワット発電中さん:2012/04/11(水) 23:22:40.44 ID:hN2WpH63
>>692
DRAMのリフレッシュレジスタとかかな?
694774ワット発電中さん:2012/04/12(木) 00:22:00.48 ID:m7sXDotP
64kbytesかそこらのRAMが、DRAMでできてるのか。そりゃ、すごいなw
695774ワット発電中さん:2012/04/12(木) 00:29:46.52 ID:m7sXDotP
64k じゃなかった。64 だな。うっかりKを入れてしまった。

しかし、何で今時16F84A?
696774ワット発電中さん:2012/04/12(木) 00:39:42.13 ID:Upakl348
内部のRAMをリフレッシュレジスタでソフト的に管理するアーキテクチャ
697774ワット発電中さん:2012/04/12(木) 03:08:27.64 ID:RMczcVPG
いまどきのヤングメンはクロック止めれて当たり前なのか。おぢさんちょっとびっくりした。
698774ワット発電中さん:2012/04/12(木) 04:31:57.04 ID:FuNKaR5e
止められない奴はダイナミック回路でできてんの。
メモリどころか全体がDRAMみたいなもん。
699774ワット発電中さん:2012/04/12(木) 04:45:01.42 ID:AgtMWqgL
踊り続けないと死んでしまうのよ。
700774ワット発電中さん:2012/04/12(木) 05:13:25.22 ID:AdO4sSTd
>>687
ttp://www.picfun.com/pic20.html
ここで言う「外付けRC発振モード」になってると思う。
osc1に100k挟んで5V入れると、コンデンサが無くても浮遊容量で何とかなって、
かろうじて発振しているんじゃないか?
configの発振モードとWDTを見直してみたら?
701687:2012/04/12(木) 19:47:29.13 ID:ILOc23Nl
なんだかんだ皆優しくて泣きそう
>>700さんのRCモードだとおもいます
家で試してみます。ありがとう!!
702774ワット発電中さん:2012/04/12(木) 20:56:12.72 ID:+NOfeaCC
>>697
CMOSが普通になりだした頃に、DC〜が普通になった気がする。
703774ワット発電中さん:2012/04/12(木) 23:35:05.60 ID:3PWIzt8R
7セグ動かす時ってセグから次のセグの待ち時間はdelayとカウンターどっち使ってますか?
704774ワット発電中さん:2012/04/13(金) 00:22:32.45 ID:eGHXzQCr
>>703
待ち時間なんてなくない?
705774ワット発電中さん:2012/04/13(金) 00:42:28.18 ID:6ASTDuDL
割り込み
706774ワット発電中さん:2012/04/13(金) 00:44:02.11 ID:+avlVN6p
表示が漏れるのを防ぐための全桁非表示期間のことを言っているのだろう
707774ワット発電中さん:2012/04/13(金) 05:55:02.02 ID:6IMFdDfL
Delayもカウンターも気の持ちようとも思うけど。
Delayは-1して0で待ち終了。カウンターは0スタートで+1して任意の値一致で終了。って事を言いたいのかな?
708774ワット発電中さん:2012/04/13(金) 08:52:16.54 ID:0zC39iNB
ソフトウェアタイマ
709774ワット発電中さん:2012/04/13(金) 19:48:20.86 ID:ovf27npM
PIC初心者です。C言語をPICのために勉強中ですが、変数について教えて下さい。
変数はいろいろな有効範囲があり関数ごとにいちいち定義するようですがそれが凄く難しく感じます。
使いたい変数は全てグローバル変数として定義しても問題はないのでしょうか?
なぜ変数の有効範囲を設けているのか?それによるメリットなどあるのでしょうか?
よろしくお願いします。
710774ワット発電中さん:2012/04/13(金) 20:12:47.51 ID:bs/iYfdS
言語のスレで聞くべき話では?
711774ワット発電中さん:2012/04/13(金) 20:16:44.67 ID:xXkvNQc3
>>709
>変数はいろいろな有効範囲があり関数ごとにいちいち定義するようですがそれが凄く難しく感じます。
>使いたい変数は全てグローバル変数として定義しても問題はないのでしょうか?
>なぜ変数の有効範囲を設けているのか?それによるメリットなどあるのでしょうか?

自分でプログラム組んでりゃ自然と分かるよ。
712774ワット発電中さん:2012/04/13(金) 20:28:41.58 ID:ANsZf23j
去年の冬休みからはじめたけど、変数は難しいとか思わないし
意図しないタイミングで変数の中身が変わらないようにするとかじゃない?
こういう事がしたい時にこうするって様な事が書いてある本がなくて
なんかひととおり機能の紹介だけで、使い方の解説があんまりないと思う。
アセンブラのおまけにCのコードがちょっとついてる本ばっかり・・・。
713774ワット発電中さん:2012/04/13(金) 20:48:30.34 ID:BflGTo91
Cの入門書なんて腐るほどあるんだから、そっちで勉強すればいい
マイコン関連本でいまさらそんな基本からいちいち書かないだろう
714774ワット発電中さん:2012/04/13(金) 21:18:26.53 ID:v4tHaape
アセンブラ組むことで見えてくることもある
715774ワット発電中さん:2012/04/13(金) 21:41:31.41 ID:DQBuS5Uv
>709
メモリに余裕があるなら全部グローバルでも問題になる事は少ない。
ローカル変数のメリットは有効範囲がその関数内のみの為、その関数の
処理が終了したらその変数が使っていたメモリを他の事に使い回せる。
変数を10個ずつ使う関数が10個あった場合、全てグルーバルならメモリ100個必要だが
ローカル変数ならメモリ10個ですむ(ただし関数内で関数を呼び出すと+10ずつ増える)

あと>709さんとは感じ方が異なるかもしれないが、私としては変数の名前の管理が楽w
ローカル変数なら使うのが狭い範囲内だけだから、aとかbとかi,jみたいに1文字で
適当でもなんとかなる、グローバル変数はそれなりの名前つけないとわからなくなる。
716774ワット発電中さん:2012/04/13(金) 21:51:26.60 ID:lmjD8DjF
>>709
例えばある関数の中でforループで使う変数をグローバルにしちゃうと、ループ内から他の関数呼び出しする時にループ用変数が被らないように関数の数だけ用意しなきゃならなくなって、管理が大変。
詳しくは C言語 スコープ でググってみてください。
717774ワット発電中さん:2012/04/13(金) 23:29:00.07 ID:Ly+UHvja
PIKKIT3についてきたPIC18F45K20を慣れたCCSCで使いたいのですが
初期化関係のレジスタを設定する方法がよくわかりません
めんどくさいので仕様書を読みながら値を突っ込みたいので
0x30000のアドレスからバイトコードで書く方法ありますか?
718709:2012/04/14(土) 00:40:26.14 ID:pyuB0Y0p
>>715>>716
そうですか。メモリ節約と変数の管理の問題があるんですね。
最初はグローバル変数でプログラムを書いて、慣れたらその他の変数を勉強したいと思います。
ありがとうございました。
719774ワット発電中さん:2012/04/14(土) 02:17:05.42 ID:sdi+pcTR
ここは>>714みたいなやつばっかりかと思ったが、そうでもないのでちょっと安心した。
720774ワット発電中さん:2012/04/14(土) 02:37:02.27 ID:AOlK63qx
まあ何を使おうが目的を達せればいいのよ
721687:2012/04/14(土) 06:08:10.90 ID:Se/K0SL6
アセンブラで書くとかアホだろ。
ハイテックなら瞬殺で入れられるのにな。
もっと早くいれときゃよかった••
722774ワット発電中さん:2012/04/14(土) 14:18:27.53 ID:HQh0ngGO
ラダーを標準にしようぜ
723774ワット発電中さん:2012/04/14(土) 17:35:11.11 ID:ZOGd2B3r
ああいう原始的なものを抽象化する為に言語を開発しているのに
724774ワット発電中さん:2012/04/14(土) 18:44:41.94 ID:EXz4hpuV
MPLAB X V1.1.0とPICkit3の組み合わせでデバッグプロジェクトをすると
プログラミングを失敗してデバッグできへん。
MPLAB IDEのV8.84でも
The following memory regions failed to program correctly:
Debug Executive
Programming failed
と表示されて書き込めへん。

でも、MPLAB IDEのV8.46なら書き込める。
どういうこと?
725774ワット発電中さん:2012/04/14(土) 20:34:18.80 ID:RV2MNqpR
>>724
使える奴使えばいんじゃね?
726774ワット発電中さん:2012/04/14(土) 21:20:15.58 ID:KEGq4c/N
>>723
717だけどサンプルプログラムがコンパイルできなくてなぁ・・
#progma?の引数に何入れたらいいのかヘッダ見ても説明不足で分からんのよ・・
727774ワット発電中さん:2012/04/14(土) 22:47:49.17 ID:AOlK63qx
全然慣れてないじゃん・・・
サポートに連絡すれば?
728774ワット発電中さん:2012/04/14(土) 23:26:04.80 ID:KEGq4c/N
CCSも慣れたと言っても2,3週間触ったぐらいだからなー
ハイテックCだともうさっぱりでしかもサンプルはハイテックで書かれてるっぽいし
初期化さえできれば後は何とかなるだろうし、もうちょい解析してみるよ・・
729774ワット発電中さん:2012/04/15(日) 02:23:07.38 ID:TFwcCjOf
>>723 >>721
場合によってはアセンブラでないと出来ないこともあるし、人によっては
高級言語よりアセンブラの方が得意(とくに組み込みの分野では)だろうから
それはそれでいいのだけれど、Cの話題になっているのにアセンブラとか
もちだすのは、チョットと思う。
730774ワット発電中さん:2012/04/15(日) 11:37:43.52 ID:q2PJv8dN
PIC16F193Xのブラウンアウト電圧の定義、HI-TECH Cのバージョンが上がるごとに変わってる。
勘弁してくれ。
731774ワット発電中さん:2012/04/15(日) 12:09:22.29 ID:JYHxy1Z1
>>730
その定義関係の説明って何処に乗ってるか教えて下さい・・
ヘルプ見ても型番ごとの詳細は載ってないし
ヘッダファイル見ても説明不足だし、訳ワカメ
732774ワット発電中さん:2012/04/15(日) 12:12:34.93 ID:4uiQ13XI
>>731
インクルードされるファイルをとどっていくと、デバイス別のファイルに出会えるよ。
733774ワット発電中さん:2012/04/15(日) 13:51:00.70 ID:JKJ4K06s
PICC-18とかMCC18とかだったらdocディレクトリ以下に定義情報書いたファイルかヘルプが入ってるけどPICCにはないな
734774ワット発電中さん:2012/04/15(日) 14:31:35.22 ID:I8v9P6fJ
>>731
データシートは見ないのか?

データシートとチップごとのヘッダファイル見れば、わかるだろ。
735774ワット発電中さん:2012/04/15(日) 14:37:24.24 ID:JYHxy1Z1
>>732
>>733
ありがとうございます、明日会社でゴソゴソ弄ってみます
736774ワット発電中さん:2012/04/15(日) 18:18:11.64 ID:CkN34r6I
まっ、ワレも84にどっぷり浸かった口だから大きなことは言えんが、そんなミニ規模でいつまでも遊んでおらん方が良いと思うぞ。
ハードは広大だがソフトはもっと広大だ。
CCSや、I2Cのプルアップ云々で悩んでいるんだったら、2chじゃなく、もっと親身なところで解決して、
早く、組込みソフトの真髄世界に取り組んだ方がええ!
もっとも、CCSなんか使っている時点で見込みは無いが w
大事な事は、何を作るかであって、何を使うかでは無い。
737774ワット発電中さん:2012/04/15(日) 20:53:55.68 ID:JYHxy1Z1
I2Cははまったw
思いっきりプルアップ忘れてたよ
しかもファーストI/Oの設定にすると通信不能とか
随分悩んだな・・・
738774ワット発電中さん:2012/04/15(日) 20:57:49.01 ID:JYHxy1Z1
ほぼ立ち上げに近いから誰も教えてくれる人が居ないのが悩みだ
PICの解説本片手にやってるよ
まだ1000行にも達しないプログラムだからなんとかなるけどソフトの比重増えたらきついw
739774ワット発電中さん:2012/04/15(日) 22:21:11.84 ID:8x2jgzli
はまる時って、要因が二つある時だよな
これだ、と一つ目を見つけた後が長い
740774ワット発電中さん:2012/04/15(日) 23:29:42.48 ID:HmTXQJWa
>>736

なんでCSSが駄目なんですか?
C言語が駄目ってことですか?
アセンブラじゃなきゃ駄目ってことですか?
C言語と日本語しかできない未熟者です。
741774ワット発電中さん:2012/04/15(日) 23:30:25.85 ID:HmTXQJWa
CCSでしたorz
742774ワット発電中さん:2012/04/16(月) 00:37:56.05 ID:P8DTdAdn
てす
743774ワット発電中さん:2012/04/16(月) 00:41:23.92 ID:P8DTdAdn
>>740
沢山ソフトを組むのだ!
すると、Cでは太刀打ち出来ない場面に遭遇する。
744774ワット発電中さん:2012/04/16(月) 08:50:36.11 ID:UaJeffqF
あるぇX移行は面倒くさいの?
ハイテックのユニバーサルツールスイートで、メニューのコンフィグ→セレクトでデバイス決めたのちコンフィグの候補いずれかがコンボボックスに表れる仕組みになってたから、主にマクロ使うのやめてたんだけど…
これもセットインコードなのにディスアセンブルではリストに載らん。もっと殊勝なコトするんだ?
745774ワット発電中さん:2012/04/16(月) 09:00:29.06 ID:UaJeffqF
訂正、
文中2回目の
×コンフィグ
○コンフィグレーションビット
746774ワット発電中さん:2012/04/16(月) 11:51:17.59 ID:vET+UQN+
カタカナで書かれると違和感があるw
747 忍法帖【Lv=4,xxxP】 :2012/04/16(月) 12:09:56.18 ID:u9kO9mUg
picで燃費計をつくりたいです。
2つの信号をカウントしてLCD表示
させるのに適したPICを教えてください
よろしくおねがいします。
748774ワット発電中さん:2012/04/16(月) 12:35:16.96 ID:jzSLh1Eu
>>747
なんでも良い。
8ピンPICだとピン数の問題で厳しいが。
749 忍法帖【Lv=4,xxxP】 :2012/04/16(月) 13:20:09.41 ID:u9kO9mUg
>>748
ありがとうございます。
またよらせていただきます。
プログラム勉強させていただきます。
750774ワット発電中さん:2012/04/16(月) 17:25:24.01 ID:VcpymZXL
秋好きにI2C接続のLCD入ったね。ブレッドボード野郎には朗報かも
751774ワット発電中さん:2012/04/16(月) 20:36:07.96 ID:kaw0kXAn
ttp://akizukidenshi.com/catalog/g/gP-05693/
これでしょ、I2CのLCD
16x2のバックライト付きで\1,260か・・・・
752774ワット発電中さん:2012/04/16(月) 22:31:33.54 ID:U2UAWW2Y
ブレッドボードは関係ないけど、ピンをいっぱい取られないのはいいな

別にI2Cじゃなくても、clk, data, stbのふつーのシリアルでも構わないんだけど
753774ワット発電中さん:2012/04/16(月) 22:42:57.37 ID:oVj6rSXD
個人的には双方向もいらないからUSARTのTx(9600bps)だけでもいいと思う
754774ワット発電中さん:2012/04/16(月) 22:49:54.32 ID:XT7LNjnA
少ピンマイコンでの開発時の情報表示用とかに使えるのかな
USARTとは違ってシステムクロックの周波数が自由にできるのがI2C接続LCDの利点かな
755774ワット発電中さん:2012/04/16(月) 23:28:16.50 ID:U2UAWW2Y
開発用のモニタはPCに表示させる方が便利
無限にバックログ見れるし
pickitから繋がるし
756774ワット発電中さん:2012/04/17(火) 08:46:19.65 ID:GLk0FZq7
>>751
中のヒトがPIC。。。
757774ワット発電中さん:2012/04/17(火) 09:40:17.63 ID:v2x8BLcm
>>756
そのPICを書き換えればいろいろ出来そうだな
758774ワット発電中さん:2012/04/17(火) 11:08:09.17 ID:1k+G5aaX
>-未16F1847 ---- 08Kw 1024 I/O16 ADC12 CapS12 Comp2 Timer4/1 MSSP2 ECCP1/1 CCP2
>-未16F1825 ---- 08Kw 1024 I/O12 ADC-8 CapS-8 Comp2 Timer4/1 MSSP1 ECCP1/1 CCP2

このあたりのピン数すくないにしてはプログラムメモリが多い品種を扱ってこそ
I2Cキャラクタ液晶の使い道ができてくる
秋月さんよろしくお願いしますよ
759774ワット発電中さん:2012/04/17(火) 13:25:44.97 ID:6U+HT4LR
mikrocでグラフィック液晶制御して遊んでるんだけど、描画がかなり遅いorz
youtubeで18シリーズのPICで凄い速い描画の奴見たんだけど、あれはどうやってるの?
やっぱりアセンブラなのかな?
760774ワット発電中さん:2012/04/17(火) 15:52:01.38 ID:DiOT4HV5
クロックが違うだけだったりして。
761774ワット発電中さん:2012/04/17(火) 16:04:04.16 ID:EVCBR5W2
>>759
これか?

Music visualization on LCD (PIC18) with Microphone
http://www.youtube.com/watch?v=pJSdhVjjM78

凄い速いというほどのもんでもないと思うが。
762774ワット発電中さん:2012/04/17(火) 17:37:33.06 ID:z60jatVt
>>761
そ、それは キャ、キャラクタ・・・

http://www.youtube.com/watch?v=mT4V4Wlwe-8
この動画です。
どうやってるんだろうか・・・
763774ワット発電中さん:2012/04/17(火) 18:14:21.95 ID:QO85OUX1
mikrocのライブラリがどんなのか知らんが、
線描画時とかにGLCDからデータの読出しとかやってるなら、
1024バイトのVRAM確保して、VRAM→GLCD の一歩通行にするといい。
常に書込みモードになるから、RW分ののI/Oも減らせる。

しかし、この動画のGLCDいいな。
秋月で売ってるGLCDは画面上部のアイコンが邪魔。
あれのせいでいらん処理が増える。
764774ワット発電中さん:2012/04/17(火) 18:33:22.22 ID:EVCBR5W2
>>762
それぐらいできるだろ。
お前が遅いって言ってるのはできの悪いライブラリのことじゃねぇの?
765774ワット発電中さん:2012/04/17(火) 18:51:33.24 ID:scl7PsSn
0.5MHzのZ80でも余裕
766774ワット発電中さん:2012/04/17(火) 20:41:41.53 ID:rF5CCE4K
>>759
ゆとりはバス接続がめんどいからSPIですませようとする。
しかもBitBangでなw
767774ワット発電中さん:2012/04/17(火) 20:44:36.60 ID:rF5CCE4K
>>728
CCSだろうが純正だろうが、なれると関係なくなるな。
CCSにしたって、ゆとり向け組み込み関数は殆ど使っていないし。
データシートからレジスタの番地引っ張った方がわかりやすい
768774ワット発電中さん:2012/04/17(火) 21:07:49.92 ID:z60jatVt
>>763>>764

ごめんなさい。コンフィグが間違ってますた(;´Д`)
例の動画でもmikrocと記述があったので、おかしいと思い見直してみたら低クロックで動いてましたorz
直してみたら劇的に速くなりました

769774ワット発電中さん:2012/04/17(火) 21:24:11.61 ID:ACLagYk7
770774ワット発電中さん:2012/04/18(水) 18:04:57.89 ID:6vRvTNOD
初心者です。始めてまだ1ヶ月くらいですがよろしくお願いします。
LEDの点滅とADコンバータまでは使えるようになりました。
本当にこんな小さな物体にプログラムを書き込んで自分の思い通りに動かせるようになると思うとワクワクします!
最終的にはミサイルの制御基板を作り、北○○に輸出しようと思います!(冗談です)
771774ワット発電中さん:2012/04/18(水) 18:27:10.71 ID:pBQr5wz8
北海道はそんなの欲しくないと思うよ
772774ワット発電中さん:2012/04/18(水) 19:19:48.00 ID:8vLOg9F4
北関東だろ
773774ワット発電中さん:2012/04/18(水) 19:24:16.06 ID:4OgJ2UkN
北極星かもしれねぇな。運搬用ロケットにも転用できそうだし。
774774ワット発電中さん:2012/04/18(水) 21:56:45.90 ID:cCTudBU7
>>769
回し者じゃあないけど、結構面白いもの扱ってるね。
UART2MMCなんていい感じじゃん。
775774ワット発電中さん:2012/04/19(木) 02:27:49.26 ID:1LhAk+r+
>>774
UART2MMCって、シリアル通信でMMC(SDにも?)にデータを
書ける又は読めるってことですよね??
今度、工業化学の授業で実験データをSDカードとか
USBメモリにログファイル残したいんだけど、PICとかでシリアル
で接続して使えるのかな?今はパソコンでやっているんですけど
PICで作りたいと思っています。
776774ワット発電中さん:2012/04/19(木) 02:35:34.64 ID:sduB1TSW
>>775
PSoCとかしらべてみな。Arduinoならもっと簡単。高いけど。
777774ワット発電中さん:2012/04/19(木) 04:04:13.46 ID:mgZe1MWs
>>775>>776
んむ。 PSoC3or5でemFileとUSBコンポ使った方がええかもな?
778774ワット発電中さん:2012/04/19(木) 13:59:02.03 ID:ZxC7GQIH
USBメモリを繋げるようにするには自分がホストになるプログラムを書かないといけないからなあ
779774ワット発電中さん:2012/04/19(木) 14:47:53.70 ID:4/zsZdVj
人間のくずになってまでUSBメモリ繋げたくないよな〜
780774ワット発電中さん:2012/04/19(木) 18:46:50.87 ID:WGMbdyb3
>>776 >>777

USBホストを実装するのは大変なので、ここにある
ホストを搭載してUARTで制御できるボード買いました。
FATの仕組みも書かないといけないし作るのは大変すぎると判断しました。
Arduinoは学校では使っていません。実習はすべてPICなので。
ありがとうございました。
781774ワット発電中さん:2012/04/19(木) 18:53:52.09 ID:2eUiACe3
>>780
microchipのHPにFATライブラリーソースがあったと思う。
782774ワット発電中さん:2012/04/19(木) 20:14:34.47 ID:8F7d7EED
ロングファイルネームを使えないしね。
FAT32+LFNにはMS様のライセンスが必要らしいよ。
783774ワット発電中さん:2012/04/19(木) 21:06:11.36 ID:2eUiACe3
>>782
データーロガーなら書くだけなのでLFNが無くても問題無いとは思うけど
784774ワット発電中さん:2012/04/19(木) 22:05:16.55 ID:WGMbdyb3
>>782 >>783

そうですね。ありがとうございます。
8.3ファイル名ならいいらしいです。日本語でファイル名を
付けたい時、2バイト文字なのでその時はライセンスがいるようです。
難しいですね。SDカードも使うにはライセンスがいるようですね。
785774ワット発電中さん:2012/04/19(木) 22:13:49.41 ID:uX/In2pS
linuxのドライバってライセンスどうなってんの?
786774ワット発電中さん:2012/04/19(木) 22:47:03.22 ID:rBsCzYzs
>>785
勝手に論理構造解析して同等の実装してるだけだから
プログラムそのものはライセンス引っかからないんじゃない?
商用に使ったらよく分からんなー
787774ワット発電中さん:2012/04/19(木) 22:59:15.93 ID:UzVQCGJb
>>786
>プログラムそのものはライセンス引っかからないんじゃない?

パテントは別
788774ワット発電中さん:2012/04/19(木) 23:19:06.84 ID:rBsCzYzs
>>787
個人で使うだけならパテントとか無視できるんだがなぁ
LinuxのFATはMSの温情で訴えられて無いだけなのか?と思って
ちょっと調べたらパッチで回避出来る問題らしい
893のみかじめ料みたいな物かね訴えられる可能性を無くしたいなら金払え的なw
789774ワット発電中さん:2012/04/20(金) 01:11:36.95 ID:dAuu8oSJ
>>784
個人的な利用だったらchanさんのfatfs使えばSDHCもLFNも使えるぞ。
ただし、LFNに関しては実装にs-jis⇔unicodeのテーブルがいるからその辺のpicじゃ無理。
790774ワット発電中さん:2012/04/20(金) 03:20:11.56 ID:9rvByQe2
しかし、FATでのLFNって、8.3文字を無理やり拡張したような仕様で
結構面白い。後方互換もある。「新しい~1.TXT」みたいな。
791774ワット発電中さん:2012/04/20(金) 12:53:18.72 ID:C613Epv8
こないた買ったばかりのmp3プレイヤーが、
ファイル名がその「MS-DOS形式以外のファイル名に対する短い名前」にしか対応してなくて、
プレイリストを作るとえらいことになる

\Music\2011\01TAST~1.MP3
\Music\2011\02モノ~1.MP3
\Music\2011\03わが~1.MP3
792774ワット発電中さん:2012/04/20(金) 13:34:54.09 ID:QU45moWr
\Music\2011\01TAST~1.MP3 ← 01TASTEは味という意味.MP3
\Music\2011\02モノ~1.MP3 ← 02モノレールでGO!.MP3
\Music\2011\03わが~1.MP3 ← 03わが人生に一片の悔いなし.MP3

(;゚Д゚)
793PIC初心者@1ヵ月:2012/04/20(金) 17:58:19.25 ID:jCok9H5v
すみません教えて下さい!
18F15K22という石を使ってるんですが、外付けクロックにした場合、PORTA.6は空きピンにしかできないのでしょうか?
可能ならIOとして使いたいです。よろしくお願いします。
794ミ爻ж 銀翼の堕天使 ж爻彡 ◆2TENKK.nkY :2012/04/20(金) 18:23:13.16 ID:05CtBZt3
>>793
まずは、データシートの表示させるところまでやってみようね。
たしか、PIC18F15K22で検索すると。。。
http://www.microchip.com/TechDoc.aspx?type=datasheet&product=PIC18F15K22

あれぇ?石の型番もあやふやでプログラムなんかしても大丈夫なの?wwww
795PIC初心者@1ヵ月:2012/04/20(金) 18:31:15.08 ID:jCok9H5v
すみません25K22です。
796ミ爻ж 銀翼の堕天使 ж爻彡 ◆2TENKK.nkY :2012/04/20(金) 18:44:06.32 ID:05CtBZt3
>>795
LATA<6> data output; enabled in INTOSC modes when
CLKO is not enabled.
PORTA<6> data input; enabled in INTOSC modes when
CLKO is not enabled.

諦めろ。
34ページ当たりも読んでおくと良いかも
797PIC初心者@1ヵ月:2012/04/20(金) 19:20:15.43 ID:jCok9H5v
>>796

やはり駄目ですか。。。
わざわざコピペまでありがとうございました。
798774ワット発電中さん:2012/04/20(金) 21:07:16.13 ID:SqQ88H1F
データシートくらいちゃんと読みましょうね(^o^)
自己解決できるようになりましょう!(^o^)
英語ができないって!? 甘えないでね(^o^)
799PIC初心者@1ヵ月:2012/04/21(土) 00:26:22.98 ID:qRUY+VWq
(^o^)> テヘヘ
800774ワット発電中さん:2012/04/21(土) 00:34:08.48 ID:9/NaDrve
>>793
inputは無理だけれど、outputなら使えるよ。
発振モジュールからのクロックをCLKINに入れる必要があるけど。
EC MODEのあたりを読んでみたらいい。
801774ワット発電中さん:2012/04/21(土) 02:01:55.90 ID:tiTOnLU3
>>798
>英語ができないって!? 甘えないでね(^o^)
誰に言っているんだ????
802774ワット発電中さん:2012/04/21(土) 06:58:12.55 ID:h20TZaqQ
PICがデゥイノーよりすぐれているところは?
でも難易度高いの?
803774ワット発電中さん:2012/04/21(土) 07:33:24.16 ID:E38kY5yz
>>802
明らかに難易度は上がるが
君のやりたいこと次第では難易度は大したこと無いかもしれない
先ずは触って見ることだ、情報の多い古いPICがおすすめだぞ
804PIC初心者@1ヵ月:2012/04/21(土) 08:30:15.91 ID:zo0oQMHF
>>800

実は4.194304MHzの水晶発振器をつなげて時計を作ろうとしています。
てっきり、HSモードじゃなければ駄目だと思っていましたが、ECモードでも問題は無いと考えて良いのでしょうか?
レベルの低い質問で恥ずかしいですがよろしくお願いします。
805774ワット発電中さん:2012/04/21(土) 08:48:29.14 ID:yDw4ZfdL
>>804
俺も時計を作ってるところだ
手元の本にはHSは発振子、ECは発振器って書いてる
806774ワット発電中さん:2012/04/21(土) 10:16:46.17 ID:HPrrJI3y

1. RC External Resistor/Capacitor
2. LP Low-Power Crystal
3. XT Crystal/Resonator
4. INTOSC Internal Oscillator
5. HS High-Speed Crystal/Resonator
6. EC External Clock

とあって

2. LP Low-Power Crystal
3. XT Crystal/Resonator
5. HS High-Speed Crystal/Resonator


水晶とかセラミックの発振子は単独では発振しないから
発振させるための回路が必要で
その回路がマイコンの中にあって
その回路の最適特性が
接続される水晶とかセラミックの発振子の発振周波数によって異なるから
それをマイコン内部で切り替えるための設定

6. EC External Clock

の場合は外部の(既に発振している)発信器から
直接クロックが入力されるから
LP XT HS のための内部回路の設定は関係なくなる
807774ワット発電中さん:2012/04/21(土) 11:32:10.85 ID:9/NaDrve
>>804
RA6を空きピン云々ということは、PICとは独立した発信器からのクロックが、
RA7に入っているんでしょ?それはむしろ、ECモードでないと問題が出るはず。
あとは、configの設定でECモードで、且つRA6をI/Oにするのがあるはずだから、
それでOK。
808ミ爻ж 銀翼の堕天使 ж爻彡 ◆2TENKK.nkY :2012/04/21(土) 14:16:58.89 ID:acMUl8j2
>>804
データシートを見落としていたな自分orz
ECモードはCLKOUT側を汎用ポートとして使える。(34ページ図2.5)
また、その周波数だと、ECMP ? between 500 kHz and 16 MHzなのではないだろうか?
809PIC初心者@1ヵ月:2012/04/21(土) 19:30:00.05 ID:zo0oQMHF
>>800>>805>>806>>807>>808

どうもです!こんなにレスを頂けるなんて凄く感謝します!
ここは2ちゃんか?と思うほどみなさん優しくて感動しますた!
ECモードにすれば汎用IOとして使用できるということで安心しました。
あとはコンフィグを直して動作確認してみます。
どうもありがとうございました!!!

810PIC初心者@1ヵ月:2012/04/21(土) 20:12:40.26 ID:zo0oQMHF
追伸:

設定は、HSMP = HS oscillator (medium power 4-16 MHz) にしていましたが、何故か5分の計測では1秒も狂わずに動いていました。(たった5分ですが。。。)
とりあえず、RA6をIOとして使いたかったので、FOSC = ECMPIO6 EC oscillator (medium power, 500 kHz-16 MHz) に直してみます。
HSモードは発信器で、ECモードは発振子と思い込んでいたみたいです。


811774ワット発電中さん:2012/04/21(土) 22:19:04.96 ID:H69swsJ5
16F88のRB4-7の変化の検出機能についてなのですが、
4ポートまとめての検出は出来るけど、
個別のポートの変化を検出できないようなのですがこれはどういうことですか?
どれが変化しても1つのサブルーチンにしか飛べないということですか?
そのサブルーチンの中で状態を調べて分岐させれば4種類の動作をさせることができますか?
812774ワット発電中さん:2012/04/21(土) 22:35:29.22 ID:t1HVvZQw
飛ぶとか何とか言う前に、割り込みについてデータシート当たってみたら?
813774ワット発電中さん:2012/04/21(土) 22:49:27.79 ID:zQPcmFoJ
>811
>そのサブルーチンの中で状態を調べて分岐させれば4種類の動作をさせることができますか?
その通りです。
RBIFは最後にそのポートを読みこんだ値から変化したら立つので、前回の値を保存しておき
今回の値とExORすれば該当Bitだけ"1"になるのでわかります。
ただ変化が(マイコン的に)一瞬のパルスだとRBIFは立つけど、読みだす前に戻ってしまうとかは
あるかもしれません
814774ワット発電中さん:2012/04/21(土) 22:54:46.57 ID:H69swsJ5
>>813
ありがとうございます!
パルスの動作も了解です(^ー^)
815774ワット発電中さん:2012/04/22(日) 01:02:26.41 ID:X9vXgIsE
いいなその顔文字、見ててイラッとする。
816813:2012/04/22(日) 01:27:09.52 ID:xr4I+REy
データシートながめてて気づいたけどピンの状態変化割込みって
PICによってBit毎に指定できるのとできないのがあるんだな
16F648A,16F88,18F2550等 Bit毎の指定無し
16F886,18F14K50,24FJ64等 Bit毎のOn,Off指定あり(IOC,CNEN)
Offできないのはピンの割付気をつけないとはまりそう。

Enhanced Mid-Rangeの12F/16F1xxxだと改良されてて
ビット毎に立ち上がりエッジ有効/無効(IOCBP)
ビット毎に立ち下がりエッジ有効/無効(IOCBN)
ビット毎に状態変化発生の有無(IOCBF)
が設定できるようになってる。細かい所も改良しているんだな。
817774ワット発電中さん:2012/04/22(日) 02:34:06.93 ID:+NAJUyk3
16F886比で16F1xxxだとI2Cスレーブのクロックストレッチ対応性が改善されてたりとか
いろいろ改良されてるよ
818774ワット発電中さん:2012/04/22(日) 02:37:29.92 ID:4aowZZcS
寸止め(^-^)
819774ワット発電中さん:2012/04/22(日) 03:41:09.29 ID:2JZ5tCj3
改良された奴はデジタルとアナログの指定がピン毎だけど、
パターンでしか指定できない奴は、何を考えてあんな設計にしたんだ
820774ワット発電中さん:2012/04/22(日) 11:42:01.23 ID:cliqjCWp
昔のPICは8bitのプリスケーラをタイマ0とウォッチドグタイマとで共用したりしてまで
回路規模の縮小に勤めていたマイコンなんだぞ
MSSPとかCCPとかもその名残だろうし
デジタルとアナログの指定がパターンでしかできないのもその名残だったのだろうよ
821774ワット発電中さん:2012/04/22(日) 13:23:37.42 ID:xr4I+REy
>820
おおっ12F/16F1xxxはWDTのプリスケーラが独立したんだな、間隔も1ms〜256秒までと広い
細かい所に手が届いてる。どうせなら16bitタイマーの読み書きもラッチつけてほしかったな

プリスケーラと言えば、タイマのプリスケーラ値はタイマへの書き込みでリセット、読み出し不可
で不便だったけど値を調べる方法があったんだな
ttp://ww1.microchip.com/downloads/en/AppNotes/00592d.pdf
ttp://www5b.biglobe.ne.jp/~YASUSI/gallery/electronics/061029/061029.htm
これだとTxCK以外の別ピンで H/L してカウントするけど、TxCKのピンをそのまま出力モードにして
カウントできそうな気もする、そのうち試してみるかな
822774ワット発電中さん:2012/04/22(日) 15:57:37.84 ID:8knW1JFi
>>811,816
>>196でもある程度触れられている

>>196に対するアップデートが>>816みたいなもんだ
823774ワット発電中さん:2012/04/22(日) 17:14:23.89 ID:4/tAB1LX
使用PIC PIC16F690
使用ソフト MPLAB IDE,HI-TECC

c言語でプログラミングしているのですが
LEDを点灯する簡単なプログラミングさえできません
ソースファイル(@)を作ってビルドすると以下の様なエラーに関する文(A)がでるのですが
何が間違っているのかが分かりません ご指摘お願いします
@
#include <pic.h>

__CONFIG(INTIO & WDTDIS & PWRTDIS & MCLRDIS & UNPROTECT & BORDIS & IESODIS & FCMDIS);

void main(void)
{
TRISC=0;
PORTC=0x01;
}
A
HI-TECH C Compiler for PIC10/12/16 MCUs (Lite Mode) V9.81

Copyright (C) 2010 Microchip Technology Inc.
(1273) Omniscient Code Generation not available in Lite mode (warning)

Error [800] test1.as; 45. undefined symbol "FCMDIS"

Error [800] test1.as; 45. undefined symbol "IESODIS"

Error [800] test1.as; 45. undefined symbol "BORDIS"

Error [800] test1.as; 45. undefined symbol"UNPROTECT"

Error [800] test1.as; 45. undefined symbol "MCLRDIS"

Error [800] test1.as; 45. undefined symbol "PWRTDIS"

Error [800] test1.as; 45. undefined symbol "WDTDIS"

Error [800] test1.as; 45. undefined symbol "INTIO"


********** Build failed! **********
824774ワット発電中さん:2012/04/22(日) 17:24:36.80 ID:wlxzweLA
プロジェクトウィザードで、ちゃんとPIC16F690を選択した?
825774ワット発電中さん:2012/04/22(日) 18:20:30.91 ID:mVLdHj7s
物は試し、pic.hをhtc.hに変えてみる。
あとは、前の人と同様だけどデバイス選択。。
826natu:2012/04/22(日) 19:01:25.71 ID:3nbs5I4w
>>823
PICCV9.81は、case文にバグが有るのでV9.83にバージョンアップする。
C:\Program Files\HI-TECH Software\PICC\9.83\include\pic16f690.hを見る。
これで解決しない時は、再度質問する。待ってますよ…
827774ワット発電中さん:2012/04/22(日) 20:21:37.44 ID:6l2p17uO
初心者質問スレ その85
ttp://uni.2ch.net/test/read.cgi/denki/1334405163/321-

時刻、ID から見て、>>823 のほうが胡散臭い気がする。
828774ワット発電中さん:2012/04/22(日) 20:33:55.27 ID:DYR34cHe
>>826
>>823の元質問者(ttp://uni.2ch.net/test/read.cgi/denki/1334405163/の)です
バージョンアップしたのですが出るエラーメッセージは同じでした…
829774ワット発電中さん:2012/04/22(日) 20:36:56.00 ID:Bi01icIS
>>828
多分左上に出てくるであろうプロジェクトのツリーがあると思うのだが
そこのインクルードに使用するマイコンのヘッダファイルを指定して突っ込まないと行けないと思うんだ
830774ワット発電中さん:2012/04/22(日) 22:53:25.25 ID:9FbIIUPC
ある時を境にコンフィグワードの定義名が変わったんじゃなかったっけ?
831774ワット発電中さん:2012/04/22(日) 23:37:39.25 ID:xr4I+REy
>828
830さんのいう通りみたい
__CONFIG(FOSC_INTRCCLK & WDTE_OFF & PWRTE_OFF & MCLRE_OFF & CP_OFF & CPD_OFF & BOREN_OFF & IESO_OFF & FCMEN_OFF);
上記の内容でエラー無くなる
詳細は826さんの言う通り pic16f690.h に書いてある
832774ワット発電中さん:2012/04/22(日) 23:52:21.61 ID:xr4I+REy
それと下記を追加しといたほうがいい、アナログ入力なっているのでOFF
ANSEL=0;
ANSELH=0;
833774ワット発電中さん:2012/04/23(月) 00:27:19.28 ID:o3YeLMAj
MPASMに関する質問です。

byte擬似命令のような物が見つからず、以下のようなマクロを書いて自分でデータ領域を管理?しています。

BYTE macro bank,name
   variable tmp=$
   org bank
name res 1
   variable bank=$
   org tmp
   endm
bank0 set 0x020 ;data memory bank 0 0x020..0x06f
bank1 set 0x0a0 ;data memory bank 1 0x0a0..0x0ef
bank2 set 0x120 ;data memory bank 2 0x120..0x16f
banks set 0x070 ;data memory bank 0|1|2|3 0x070..0x7f
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; グローバル変数
   BYTE banks,irh_w
   BYTE banks,irh_status
   BYTE bank0,led_state

メモリマップは、PIC16F648辺りを想定しています。
で、案の定、テキストというかコードの方が伸びてくると怒られます。
Error[118] C:\NEC_RL55.ASM 234 : Overwriting previous address contents (0070)

適切な方法を教えてください。
834774ワット発電中さん:2012/04/23(月) 00:40:24.96 ID:JGiThOCw
>>831
>>832
ご丁寧な回答ありがとうございます
無事成功しました
835774ワット発電中さん:2012/04/23(月) 00:49:17.04 ID:kA68YQa/
>833
回答になっているか判らないけど、CBLOCK〜ENDC でメモリを確保するのが一般的かと

 CBLOCK 0x20
  AAA1,AAA2,AAA3,AAA4
 ENDC

 CBLOCK 0xA0
  BBB1,BBB2,BBB3,BBB4
 ENDC

 CBLOCK 0x120
  CCC1,CCC2,CCC3,CCC4
 ENDC
836774ワット発電中さん:2012/04/23(月) 01:03:51.64 ID:o3YeLMAj
>>835
ありがとうございます。

833のマクロは、データの宣言があちこちに散らばる事に耐えられるのが長所でした。
昔は833のコードが通るアセンブラを使っていたのですが、最新のMPASMには嫌われてしまったようで。
835の集中管理方式に切り替えてみます。
837774ワット発電中さん:2012/04/23(月) 02:40:09.13 ID:o3YeLMAj
5V→150Ω→赤LED→光る
PICのBポート→150Ω→赤LED→光る
5V→150Ω→赤外LED→光る
PICのBポート→150Ω→赤外LED→光らない

投了です。
838774ワット発電中さん:2012/04/23(月) 03:58:47.19 ID:o3YeLMAj
>>837
自己解決しました。
やはりこのテのICはsourceとsinkで全然実力が違いますね。
データシートには両方とも25mAと書かれていますが、間違いとしか思えません。

200mAを絞り出すには8port束ねてsinkで使うか、素直に2SC1815辺りに頼るか、悩みます。
839774ワット発電中さん:2012/04/23(月) 04:25:49.23 ID:yQ3Fl5Mg
>>838
ポートを重ねるのはお勧めできない。
たしか、何かの仕様で、ポートごとに出力タイミングがあった気がする。
だから、同時ON,OFFにはならない。だったはず、間違ってたらごめん。
私だったら、1ポートでA1015に委ねる。
840774ワット発電中さん:2012/04/23(月) 05:39:32.79 ID:xvhrmfFP
ポート一つあたり200Ω付けて、LEDの直前で束ねれば良いような気もするが。
841774ワット発電中さん:2012/04/23(月) 07:54:52.78 ID:NefE1eel
>>837
どのPIC使うのかにもよるけどポート毎に最大許容電流が決まってるし、パッケージ自体の最大許容損失もあるから…200mAも流すなら迷わずトランジスタ外付けにしたい。
842774ワット発電中さん:2012/04/23(月) 10:43:40.24 ID:r6WvuypL
>>838
>データシートには両方とも25mAと書かれていますが、間違いとしか思えません。

おいおい、それは絶対最大定格だろ。どう見てもあなたがデータシートを
読み間違えてるんだが。
843774ワット発電中さん:2012/04/23(月) 19:39:07.69 ID:zz6DF7lH
PIC燃やし隊…
844774ワット発電中さん:2012/04/23(月) 22:46:58.81 ID:o3YeLMAj
>>842
はははっ。こいつはひでーな。
反省してデータシートひっくりかえしてきたよ。

sinkが0.6V落ちで8.5mA、
sourceが0.7V落ちで3.0mAとな。
こりゃ1portで25mAとか7本束ねて200mAとか言ってる俺がキチガイレベルだな。
大人しく2SA1015でも使うわ。Yぐらいならパーツ箱入ってるだろ。
(今見たら、YとGRが何本か転がってた。)
ゲートの電流制限抵抗も忘れねーよ。ちょっと待てゲートじゃねーだろ、馬鹿。ベースだベース。

……
失礼致しました。
845774ワット発電中さん:2012/04/23(月) 22:57:14.94 ID:snJAre5/

いまごろトラ技を読み終えたんだが、次号はPIC特集らしいな。
700品種もあるとか書いてあった。
846774ワット発電中さん:2012/04/23(月) 23:12:48.70 ID:XoKdHILt
その時点でのベストなものを提供し続けてるだけで、
過去の遺物は製作記事を丸コピーする時以外には必要ないのでは
847774ワット発電中さん:2012/04/24(火) 23:24:42.46 ID:N/j1xRqj
ものすごく素朴な疑問なんですけど
PIC kit2 と PIC kit3の違いって何ですか?
848774ワット発電中さん:2012/04/24(火) 23:31:28.51 ID:Ue0N+2zc
ケースの色
849774ワット発電中さん:2012/04/25(水) 00:52:56.94 ID:aGVph7DK
FAQに書いてあってワラた
http://www.microchip.co.jp/FAQ.html#PK3_A3
850774ワット発電中さん:2012/04/25(水) 01:27:20.91 ID:FjRDK6Oq
差異は128kと512k、シリアルUSBの有無だけ?
851774ワット発電中さん:2012/04/25(水) 05:00:27.30 ID:8zWfm9bB
>>848
やはり赤い3は3倍速いんだろうか?
852774ワット発電中さん:2012/04/25(水) 05:18:31.38 ID:TBlqsV7i
あったりめーだのクラッカー
そういやpicって途中で入力と出力切り替えたり出来るんだっけ。
これで足を倍に使える方法とかないかしら
853774ワット発電中さん:2012/04/25(水) 09:23:29.48 ID:BSyWDFnX
私は文系で、いままでarduinoで馴染んだ。
トラ技をかったら全部PIC関連だったのでこれからはPICを学びたい。
最も基本的なハードやセットもしくはお勧めの本あったら教えてください。
まわりに詳しい人は誰一人いません。
854774ワット発電中さん:2012/04/25(水) 09:47:25.63 ID:ACFBQAUI
>私は文系で、いままでarduinoで馴染んだ。

文系とは思えない文章力ですな。
855774ワット発電中さん:2012/04/25(水) 10:05:47.82 ID:SWTomm+P
これからはPICの時代だからな
異論は認めない
856774ワット発電中さん:2012/04/25(水) 11:24:00.71 ID:yExWXI0h
>>852
4ポートでLED12制御出来るサンプルとか見つかるよ
857774ワット発電中さん:2012/04/25(水) 18:04:27.68 ID:2ntiNVBI
久々にPICいぢることになりそうなんだけど
PICの最近のお勧めコンパイラーってなに?
858774ワット発電中さん:2012/04/25(水) 18:10:55.61 ID:fxolzNtI
Grich社製のPICCがオススメ
859774ワット発電中さん:2012/04/25(水) 18:34:48.20 ID:D01Ni3+C
mikroCが楽で気に入ってるけど、使ってる人が少なすぎる
860774ワット発電中さん:2012/04/25(水) 18:37:26.94 ID:N2T0pch5
俺も使ってるべ。mikroC
今はどうか知らんけど、ライブラリの充実度がmikroC>HItechだったからな。
861774ワット発電中さん:2012/04/25(水) 19:46:02.26 ID:2ntiNVBI
PICkit 3 Debug Express
とかと組み合わせてデバッグできるの?
862774ワット発電中さん:2012/04/25(水) 22:17:22.02 ID:vJrwQfh8
>853
Arduino使ってたのなら素直にAVR MEGAやTINY使った方が良いよ
それ以上の性能が必要ならPIC24やdsPICという選択もあるけど
新規に12F,16F,18Fやるのはやめといた方がいい
863774ワット発電中さん:2012/04/26(木) 00:54:52.22 ID:9Ah6tvvC
>>857
MPLAB C
864774ワット発電中さん:2012/04/26(木) 01:15:27.27 ID:9Ah6tvvC
>>862
PICをやってみようかという理由が「トラ技にたくさん載ってた」なのだから、
それはそれで良いんじゃない?MEGAやTINYで出来ることは殆ど12F, 16F, 18Fで
出来るんだから。Arduinoを扱ってたときにアセンブラを使っていなかったのなら、
AVRもPICも差がないと思う。

>>853
まずは、良い本を見つけることだね。本屋で色々見て、自分にあったのを読んで
始めたら?PICkit3を扱っている本は、新しい情報が入っていると思っていい。
AVRの本の方が面白そうなら、それはそれでよし。
865774ワット発電中さん:2012/04/26(木) 09:11:17.15 ID:lzOzr5Fj
教えてくださった方々ありがとう
>>864
良い本か、セットを教えていただければと思います。。
866774ワット発電中さん:2012/04/26(木) 11:51:38.78 ID:9Ah6tvvC
>>865
人によって、どんなことがやりたいかとか、どこまで基礎知識として持っているかなどが
違うから、本屋で少し読んでみて、自分に合った物を見つけるのが一番良いと思うのだけれど。
Amazonでちらっと見た限りだと、こんなのはどうかなと。

ttp://www.amazon.co.jp/dp/4839929432
ttp://www.amazon.co.jp/dp/4774137782
ttp://www.amazon.co.jp/dp/4789842118

どちらにしろ、本屋で一度見た方が良い。
867774ワット発電中さん:2012/04/26(木) 14:06:57.28 ID:IzFFo7jn
電子回路もC言語も知ってるけどPICだけ知らない、という人と
Cだけ知ってる人と回路だと知ってる人と、みんな知ってるけど応用が判らん人と、
いろんな立場がいるからなあ

そして、その組み合わせ全てに対して本を出す男
868774ワット発電中さん:2012/04/26(木) 15:34:10.76 ID:LcQYAphM
キーエンスのセンスでPICキットがあればなぁ
PLC業界が本気でマイコン領域に殴りこみかけてくれればうれしい
869774ワット発電中さん:2012/04/26(木) 17:23:40.44 ID:T1BsJHIr
あーなんだよーーーー秋月ライタのファーム更新失敗したー・・・

どーすん、これ。
870774ワット発電中さん:2012/04/26(木) 17:36:53.90 ID:zDmGwMir
PICkitに買い替える
871774ワット発電中さん:2012/04/26(木) 17:38:52.58 ID:JBgRc+1k
>>868
逆にPLCがマイコンに食われちゃうからやらないんじゃね?
まあ、信頼性とかの問題はあるけど、あんなのがウン十万円とかね、もうね。

でも、ラダーで書けたら便利かも。
872774ワット発電中さん:2012/04/26(木) 19:16:54.09 ID:gNB1SbEH
>>871
ttp://amahime.main.jp/renri/main.php?name=renri
使ったことはないがPICにラダーで書けるやつ
873774ワット発電中さん:2012/04/26(木) 20:02:08.16 ID:m3Yolp5B
>>846
その丸コピーを含めて、ある程度再現性のあるものを作りたいよ。
せっかく一から作るなら。
さすがにF84を今から使う気にはならないけど、定番というものは欲しい。
874774ワット発電中さん:2012/04/26(木) 20:28:22.24 ID:IzFFo7jn
かなりのところまでピンコンパチを保ってるし、
ソフトも設定部分だけの変更で大抵はそのまま動く

だから、理解さえしていれば回路もソフトもほぼ使い回しが効くのに、
一切変えたくないという人が過去製品を使う
875709:2012/04/26(木) 22:11:33.77 ID:8ClLeb9U
同じような質問ですみません。
PICをC言語で勉強中なのですが、ポインタとかワケワカメなので、
プログラムで使う変数は全てグローバル変数にするのですが
例えばdouble型の変数を100個使ったらどのようなPICを選べば良いのでしょうか?
ROMサイズとRAMサイズがいろいろあるので、何が何だかわかりません。
よろしくお願いします。
876774ワット発電中さん:2012/04/26(木) 22:28:50.01 ID:Cmj43PaA
>>875
> 例えばdouble型の変数を100個使ったらどのようなPICを選べば良いのでしょうか?

double型の変数を100個使えるPICを選べば良い
877774ワット発電中さん:2012/04/26(木) 22:31:43.23 ID:6wWkOQWI
double型だと64bit必要だから64/8で8バイト
変数だけで8X100で800バイト必要なわけだ
最低でも1kbのRAM容量は見ないとダメじゃない?
878774ワット発電中さん:2012/04/26(木) 22:36:57.33 ID:6wWkOQWI
しかもPIC16Fシリーズはページ切り替えとかの罠もあったような・・
879709:2012/04/26(木) 22:41:41.26 ID:8ClLeb9U
>>876>>877
レスありがとうございます。
これなんですが、1024バイトあるので大丈夫ですかね?
空きが200バイトしかないのですが、変数以外に使用されるRAMってありますか?
また、200バイトで十分に足りるのでしょうか?

PIC16F1938
http://akizukidenshi.com/catalog/g/gI-04357/
880774ワット発電中さん:2012/04/26(木) 22:46:37.23 ID:lzOzr5Fj
>>866
ありがとうございます。よくわからないから基盤付きにしてしまいそう。

>>867
両方知りません。

特に定番セットみたいなのはないんですねw
デバッガーとはどのように使うのでしょうか?最初から購入したほうがいいのでしょうか?
881774ワット発電中さん:2012/04/26(木) 22:47:14.24 ID:6wWkOQWI
>>879
確か16Fシリーズはバンク切り替えを跨いでの配列は使えないから
18F以上を選んだほうがいいかもね
自分はそんな大きな配列使ったことがないから詳しい人求むw
882862:2012/04/26(木) 22:54:30.33 ID:Ex6isyI4
>879
64bit変数を100個も使いたいなら、8bitじゃなくて16bit以上のマイコン使った方がいいよ。
PICならPIC24やdsPICとか >545
883709:2012/04/26(木) 22:57:09.02 ID:8ClLeb9U
>>881

そうですか・・・
バンク切り替えなんてあるのですね
18Fシリーズだと、そのような作業は必要ないって思って問題ないですよね?
電子回路だのC言語だのほぼ0からのスタートなので頭がこんがらがりそうです。
質問ばかりですみません

70円しか変わらないのに、18FシリーズのRAMが4Kもあるこっち使えば問題なさそうかな・・・

http://akizukidenshi.com/catalog/g/gI-05398/

http://akizukidenshi.com/catalog/g/gI-05398/
884774ワット発電中さん:2012/04/26(木) 22:57:23.37 ID:m94q6pGg
何を作ろうとしてるのか知らないけど、マイコンの限界に挑戦するのはもっと経験を積んでからの方がよいかと
ファミコン時代のプログラマーじゃないんだし、低スペックなPIC16Fにこだわる必要はあるのか?SHとかを検討すべき仕事じゃないのか?
885774ワット発電中さん:2012/04/26(木) 23:07:31.86 ID:6wWkOQWI
>>883
0から始めるならPICや他のマイコンの本買って
それに乗ってる実例集をやって練習するのが早い
いきなり配列100個とか確保してそれを処理するスピードが
どれぐらい必要なのかも分からないだろう・・?
886774ワット発電中さん:2012/04/26(木) 23:49:43.19 ID:cM2B1L5z
一番高いのが良いよ。
887774ワット発電中さん:2012/04/27(金) 00:39:18.64 ID:/qPK6Ann
>>883
18Fだと、800バイト長の領域を確保できることは出来るんだけれど、
リンカースクリプトを作成しないといけないんじゃないかな。初心者が
いきなりする事じゃないね。>>885の言うとおりだと思う。

初心者で本当にdoubleが100個必要なら、>>882とか>>886の言うように、
高機能なのがいい。PIC32MX150F128Bとか?
888774ワット発電中さん:2012/04/27(金) 00:45:53.13 ID:/qPK6Ann
>>880
なるほど。あなたの場合、ブレッドボードが使えるようになった方が
良いかもね。これについても、本屋で一度調べてみたらいいよ。

そこで基板付きに頼ってしまうようなら、Arduinoに戻った方が良い
という結論になると思う。

デバッガーというのは必須でないけれど、プログラマーは必要だよ。
これについても、ここで質問するのでなく、買った本にそって進めたら
いい。たぶん、PICkit3(プログラマー+デバッガー)を使うことになると思う。
889774ワット発電中さん:2012/04/27(金) 00:53:02.86 ID:nMWSFijC
PICで一番高いのってちょっと気になるなw
890774ワット発電中さん:2012/04/27(金) 01:36:33.76 ID:cTUL3Avw
PIC用のCでdoubleの中身が32bitのfloatではなく本当のdouble(64bit)である
ものってそもそもあるのでしょうかね
891774ワット発電中さん:2012/04/27(金) 01:45:49.67 ID:/qPK6Ann
>>890
MPLAB C compilerだと、16bit以上のPIC対応(C30, C32)で、64bit長のdoubleが有るみたいだね。
18F用のC18では32bit長。調べておいて良かった。thanks
892774ワット発電中さん:2012/04/27(金) 01:47:36.65 ID:cTUL3Avw
こちらこそどうも
893774ワット発電中さん:2012/04/27(金) 03:01:41.25 ID:/qPK6Ann
>>875
>例えばdouble型の変数を100個使ったらどのようなPICを選べば良いのでしょうか?
ここの部分だけれど、本当にdoubleの精度の変数が100個も必要なの?

マイコンを使う場合、例えばPICだとそれぞれ、
PIC12, PIC16, PIC18の場合、unsigned char
PIC24, dsPICの場合、unsigned int
PIC32の場合、unsigned long
などの符号無し整数が基本だと考えた方が良い。浮動小数点を使うのは、基本から外れてる。

もう少し考え直してみたら?
単にCを勉強したいのなら、Visual Studio等の方がお勧め。
組み込みで何かやりたいのなら、符号無し整数を考えた方が良い。
894774ワット発電中さん:2012/04/27(金) 09:57:11.75 ID:X7rDtN3l
>>871
前の会社の時はキーエンスとか高くて、カタログ見てるだけだったなぁ

>>889
時価って書いてあったりして
895774ワット発電中さん:2012/04/27(金) 21:11:38.34 ID:auj7MlBX
>889
Microchipのページ見ると現行品で高いのは意外にもPIC18Fで
PIC18F8723 $8.44(@5k個)

案外PIC32とか高くないね、DIP限定でも色々あって面白い。microchip直で買えるけど送料$20位?
PIC32MX250F128B(PIC32のDIP28,40MHz,USB,128KB-FLASH,32KB-RAM) $4.09(@1個)
PIC32MX110F016B(上のメモリ小DIP28,40MHz,USB,16KB-FLASH,4KB-RAM) $2.66(@1個)
dsPIC33EP64GP502(dsPIC33EのDIP28,70MIPS,64KB-FLASH,8KB-RAM) $4.22(@1個)
PIC24EP64GP202(PIC24EのDIP28,70MIPS,64KB-FLASH,8KB-RAM) $3.57(@1個)
PIC24FV32KA301(PIC24FV 5V入出力可のDIP20,16MIPS,32KB-FLASH,2KB-RAM,512B-EEPROM) $3.09(@1個)
dsPIC33FJ12GP201(dsPIC33のDIP18,40MIPS,12KB-FLASH,1KB-RAM) $2.97(@1個)
PIC24F08KL200(PIC24F DIP14,16MIPS,8KB-FLASH,512B-RAM) $1.80(@1個)
896774ワット発電中さん:2012/04/28(土) 00:42:40.00 ID:gc79nLsU
そうなんだよね、意外と古いのを無理して使っているのが一番コストが掛かるという
16F876AとかRSで600円ぐらいだったかな新しいPICなら300円以下で同等以上とい事に・・
LTと同じくディスコンしないから古いプロセス残すコストだとは思うが・・w
897774ワット発電中さん:2012/04/28(土) 09:17:17.23 ID:XWEln6PP
どんな役に立つもの作りました?
妻の理解が必要です。
898774ワット発電中さん:2012/04/28(土) 10:39:06.40 ID:HCQPmEoi
電動バイブ
899774ワット発電中さん:2012/04/28(土) 11:00:16.55 ID:DR1sikpR
まつのえだもくらいかげありし
900774ワット発電中さん:2012/04/28(土) 11:35:21.15 ID:A0DN0WV4
>>897
どんな物を作れば役に立つか、奥さんに聞けば良いんじゃない?
901774ワット発電中さん:2012/04/28(土) 12:52:57.80 ID:XWEln6PP
携帯と電卓ってこたえられたよ。。。

902774ワット発電中さん:2012/04/28(土) 12:56:01.54 ID:A0DN0WV4
電卓なら出来る。がんばれ!
903774ワット発電中さん:2012/04/28(土) 13:01:13.73 ID:08DiAjmS
目覚まし時計を今作ってる
爽やかな目覚めを追求したい
904774ワット発電中さん:2012/04/28(土) 20:23:41.63 ID:8wP++V9D
ICSPで走らせるとうまく動くのに
スタンドアローンだと動かない場合は
どんな原因が考えられますか?
905774ワット発電中さん:2012/04/28(土) 20:29:08.88 ID:N1Vi0X3b
電源がつながってない
906774ワット発電中さん:2012/04/28(土) 20:33:44.60 ID:gc79nLsU
>>904
PICKIT3に付いてきたPIC18F45K20だけど
PicKIT3繋いでるとちゃんと4MHzのセラロックが発振するのに
レギュレータ電源だと発振しなくなって悩んだな、
20MHzの水晶に変えたらOKだった、発振出力オシロで見るといいかも
発振電圧が低い時は上手く発振してない可能性がある
907774ワット発電中さん:2012/04/28(土) 21:12:01.11 ID:KNA+PH/E
マカーだけど、初PICでLEDチカチカ成功したyo
いつの間にかOSX上での開発環境が出来上がっていたなんて知らなかったので、
半信半疑でインスコして、ネット上のコードを参考にやってみました。
新しい奴だとヘッダファイルの記述が変わっているのにハマりましたが、
なんとか無事Lチカまでこぎ着けました。
自分のプログラムでハードが動くと言うのは癖になる楽しさですね♪





908774ワット発電中さん:2012/04/28(土) 21:55:28.17 ID:KYRZfFah
俺は超小型で強力なステッピングモータを3軸分使い、256通りのパターンで動く電動こけし作って実用化しようと画策しておる
これは間違いなく売れると確信しているわ
早速特許庁へ足を運んでいる最中だわ
909774ワット発電中さん:2012/04/28(土) 23:21:51.95 ID:QEyLLpEB
呑んだら寝ろ
910774ワット発電中さん:2012/04/29(日) 00:19:52.14 ID:jq681zFX
3軸なんてケチなこと言わずに多関節にしろ
911774ワット発電中さん:2012/04/29(日) 00:50:47.07 ID:pu+iZOq+
試験工程にはよんでください。
912774ワット発電中さん:2012/04/29(日) 01:24:23.60 ID:SSxK19fo
もちろん温度や周囲の電気抵抗の情報からPICでフィードバック制御するんですよね?
913774ワット発電中さん:2012/04/29(日) 02:23:53.88 ID:jmK8Mu03
もちろん湿り具合もフィードバックして下さい
914774ワット発電中さん:2012/04/29(日) 04:37:00.87 ID:F0QYgy6v
PIC間をZigBeeで通信する情報が見つからないお(´;ω;`)
915774ワット発電中さん:2012/04/29(日) 06:56:04.19 ID:kx03pqus
そ、そりゃ大変だ!
916774ワット発電中さん:2012/04/29(日) 08:13:54.23 ID:oOnYyL54
亀頭型ロボットを、いやなんでもない。
917774ワット発電中さん:2012/04/29(日) 09:47:23.51 ID:APosixxc
エクステンダー
918774ワット発電中さん:2012/04/29(日) 11:50:05.10 ID:yaFWclcW
モルモット用に温度で自動入切するエアコンのリモコンこさえた
919774ワット発電中さん:2012/04/29(日) 13:13:53.27 ID:f4Uq0lw7
エアコンの自動運転じゃだめなのか
920774ワット発電中さん:2012/04/29(日) 13:34:59.35 ID:KFGzGU6/
>>919
もるもっとのそばの温度じゃないとダメとか
そんなにいいエアコンじゃないとか
どうだろう?
921774ワット発電中さん:2012/04/29(日) 13:44:21.77 ID:SIU+hOR9
>>919
寒い、暑い、もちょっと。チョイ戻し。そのへん。音声認識でエアコンをコントロール。
赤外線通信でいけそう。
922774ワット発電中さん:2012/04/29(日) 13:59:11.81 ID:jmK8Mu03
俺がモルモットに・・・
923774ワット発電中さん:2012/04/29(日) 14:15:43.73 ID:bE9/h1Bp
冷暖房の温度センサを測定されるべき場所に移したいとかはあるかも。
というかそういう構造の製品がそろそろ出ててもいいと思うの…
924774ワット発電中さん:2012/04/29(日) 14:59:17.57 ID:p5HtML1P
>>923
昔使っていたシャープのエアコンはリモコンにも温度センサーが付いていて勝手に赤外線送っていた。
925774ワット発電中さん:2012/04/29(日) 15:54:00.69 ID:5Zk2IPBw
PICで温度センサー作ってる情報ない?
926774ワット発電中さん:2012/04/29(日) 16:34:03.74 ID:eR4kt4kz
Explorer 16 Development Boardに温度センサー付いててデモプログラムで温度表示されるよ
927774ワット発電中さん:2012/04/29(日) 16:49:07.98 ID:SSxK19fo
PIC自体が温度センサーになるってこと?
8MHzのHFINTOSCにくらべて31kHzのLFINTOSCの温度特性はかなり悪いみたいだから、そこらへんを利用してどうにかできるんだろうか
928774ワット発電中さん:2012/04/29(日) 17:10:54.19 ID:vTeE1pv7
ボードにセンサーついてるんじゃね
温度センサーicとかあるし楽勝だろ
Picはエフェクターとかシンセには重宝するよ
929774ワット発電中さん:2012/04/29(日) 17:23:30.21 ID:eR4kt4kz
>>927
水晶の温度特性は物理的な物だからどれも大幅に変わるとは思えないが・・
高精度なRTC欲しいなら、秋月に売ってるよ
http://akizukidenshi.com/catalog/g/gI-05006/
930774ワット発電中さん:2012/04/29(日) 17:33:16.38 ID:S90myNdc
PIC16F19xx/18xxのシリーズにはチップ内に温度計内蔵している
ttp://ww1.microchip.com/downloads/en/AppNotes/01333A.pdf
Vddからダイオード2個or4個の電圧降下した信号をADCで読み取るようだけど
Vfの変化は -1.32mV/℃(typ)、4個直列でも-5.28mV/℃。Vdd5Vだと10bitADCの
最小単位は4.88mVだから だいたい1℃単位でしか読み出せない

外付けで温度計つけるなら定番のLM35や1-wireのDS18B20
ttp://akizukidenshi.com/catalog/g/gI-00116/
(中華注意)ttp://www.suntekstore.com/goods-14002589-10_x_ds18b20_digital_temperature_sensor_.html

そう言えばPIC16F1783ってアナログ向きの8bitPICが出ているね
Enhanced Mid-Range で OpAmp , 12bitADC , 8bitDAC
931774ワット発電中さん:2012/04/29(日) 17:49:48.40 ID:SSxK19fo
>>929
それ言ったら面白くないじゃない、RTC使えば時間精度は出るし、そもそも温度センサ使えば温度は分かるんだからw
最近のは温度計内蔵してるのか、知らなかった

16F886の場合、HFINTOSCは-40〜125℃で±5%の精度が確保されるけど、LFINTOSCは15〜40kHzに変動する
個体差があるだろうから、実測して適当な補正関数をかける必要はありそうだし、もちろん実用性は皆無
そもそも同時に使えるのかよくわからない、timer経由で比較できるかな
932774ワット発電中さん:2012/04/29(日) 18:18:05.81 ID:S90myNdc
>931
実用性無視での話ならw
WDTはLFINTOSCに依存するから、PIC16F886をHFINTOSCの内蔵クロックで
動作させTMR1を動かしておいてWDTのTime-out でRESET後タイマーを読みだせば
通常より長いか短いかで判るかも
(WDT Time-out RESET後でもTMR1の値は変わらないらしい)
933774ワット発電中さん:2012/04/29(日) 18:34:44.52 ID:yaFWclcW
>>919
温度によっては止めたいし、あと停電後の運転復帰もさせたかった
934904:2012/04/29(日) 19:51:51.50 ID:LAcl32wo
>>905
>>906
ありがとうございます。

目視できる程度までプリスケーラで周波数を落としたら
その領域では正常に動いてるようなんです。
素人の趣味なんでオシロは無理です。
周波数チェックする安上がりないい方法ないですかね。

935774ワット発電中さん:2012/04/29(日) 20:05:00.42 ID:nSBVEYNx
936774ワット発電中さん:2012/04/29(日) 20:12:39.25 ID:eR4kt4kz
>>934
今安いオシロあるし1台買うといいよ
高いデジタルテスターよりも安いのが売ってるという時代だ
自分は張り切りすぎて鯵の新型買ったが・・w
937774ワット発電中さん:2012/04/29(日) 20:55:05.01 ID:jiOwhnak
>>635
何か和んだ
938774ワット発電中さん:2012/04/29(日) 22:08:36.33 ID:S90myNdc
>934
周波数も測れるテスタを買う P-10とか
ttp://akizukidenshi.com/catalog/g/gM-00137/

使用PICもライターもCONFIG内容もプログラムも何も出さずに、あいまいな
トラブル内容だけ書いても、解決にはたどり着けないと思うけど
939904,934:2012/04/30(月) 01:22:48.10 ID:ME440nUs
>>936
>>938
秋月のテスター、買ってきます。
何だか安くて心配ですが、いろいろ話題に上がってるようなので、使えるヤツかも。
ありがとうございました。
940774ワット発電中さん:2012/04/30(月) 03:30:21.66 ID:YldHpKOA
オシロもなんもないなら
せめてUARTでprintfデバッグでもできるようにした方がいい
pickit持ってるならロジアナである程度判ると思うけど
941774ワット発電中さん:2012/04/30(月) 08:16:04.65 ID:5VK+Tg7I
俺もオシロ欲しいけど、いまのところPICで作った手製の周波数計測器だけで何とかやってる。
あ、オシロも持ってたのを思い出した。これも、PICで出来てるw

デバッグはprintfデバッグっぽくEEPROMに書き込んで、それをPICkitから読み出して見てる。
942774ワット発電中さん:2012/04/30(月) 15:05:40.24 ID:3VzlJnAu
ArduinoよりPICの方が良い点ってなに?
943774ワット発電中さん:2012/04/30(月) 15:26:05.73 ID:I4KBNvd6
安い。
944774ワット発電中さん:2012/04/30(月) 15:41:08.71 ID:Btmt99mC
AVRとPICを比較ならわからんでもないがArduinoとPICの比較に意味あるん?
945774ワット発電中さん:2012/04/30(月) 15:44:43.21 ID:9P0gA8wi
早い。
946774ワット発電中さん:2012/04/30(月) 15:57:23.28 ID:DLsOPb+l
うまい。
947774ワット発電中さん:2012/04/30(月) 16:15:32.68 ID:MKIPcPIV
>>941
PICで作ったオシロって凄いなぁ
よく言う 100MHz 1GS/Sとかはどのぐらいなの??
948natu:2012/04/30(月) 17:48:28.56 ID:2xD6N4Cm
1Gサンプルで100Mの信号が観測できるって事
949774ワット発電中さん:2012/04/30(月) 19:43:46.88 ID:DiwuWTUD
>>944
何かを実現するに当たって、PICやArduinoその他の候補からどれを使うか考えるってのは
普通に比較することだと思うが、お前に言わせれば意味がない行為なのか?
950774ワット発電中さん:2012/04/30(月) 19:51:47.32 ID:9P0gA8wi
>>949
カルシウム補給が必要です。落ち着いてね。
951774ワット発電中さん:2012/04/30(月) 20:20:37.15 ID:46OeE2Hm
割り込みでスイッチが押されたことを検出して動作させる場合
チャタリングの対策をしていないとONの時に実行すべきプログラムと
OFFの時に実行すべきプログラムが入れ替わって動作してしまうことはありますか?
952774ワット発電中さん:2012/04/30(月) 20:59:11.60 ID:BiRVvzZq
>>951
入れ替わると言うよりは、ONの処理、OFFの処理、ONの処理って具合に
連続して処理する事になるかと。なお、作りに依る。
判断するタイミングが遅いとONの代わりにOFFの処理をする事もありそう。
953774ワット発電中さん:2012/04/30(月) 20:59:48.08 ID:/rwwzr6X
スイッチ押す時はチャタはないかもしれんけど
スイッチ離す時にバウンドするかも、入力が
954774ワット発電中さん:2012/04/30(月) 21:13:17.44 ID:hZONNkRW
タイマー0を使って1時間に○○をする。というプログラムを作りたいのですが、だれか雛形を戴けないでしょうか?
955774ワット発電中さん:2012/04/30(月) 21:31:10.53 ID:qUhPH/vY
>>954
↓自由に使っていいぞ

main()
{
}
956774ワット発電中さん:2012/04/30(月) 21:32:10.25 ID:hZONNkRW
>>955

Cは禁止です。
957774ワット発電中さん:2012/04/30(月) 21:37:16.27 ID:Btmt99mC
>>949
俺はシステムを組む上でPICとArduinoを比較しないし比較する意味があるとも思ってないけど
それらを比較する必然性(?)のある人にとっては確かに意味があるのかもしれないね。
958774ワット発電中さん:2012/04/30(月) 21:47:58.89 ID:I4KBNvd6
自転車とバイクが比較対象になるか、というような問題
同列には並ばないけど移動手段としての比較にはなる
959774ワット発電中さん:2012/04/30(月) 22:09:17.08 ID:9P0gA8wi
自転車好きにとって自転車とバイクは同じものを指します。
自動二輪ならモーターバイクかと。どうでもいいことですが。
960774ワット発電中さん:2012/04/30(月) 22:24:00.71 ID:LS3xHhH/
>>956
責任取れる年になってからだよな。
961774ワット発電中さん:2012/04/30(月) 22:40:52.90 ID:ySnpjNWq
>942
PICのメリット : 安い、小さい、種類多数、自由度が高い、できた時の満足度が大きい
Arduinoのメリット : 目的をPICより短時間に効率的に達成できる(と思う)

PICのメリットはAVRの単体チップでもほぼ同じ事言えるから、今Arduino使ってるなら
AVRスレに行きなさい。
962774ワット発電中さん:2012/04/30(月) 23:00:56.53 ID:ySnpjNWq
>954
もっと情報書かないと無理だよ。PIC何使うとかクロックは内蔵/水晶?
割込みで作りたいのか、単に時間待ちなのか(TMR0使う必要もないけど)

>1時間に○○をする
1時間後なのか1時間毎なのか13:00なのか
963947:2012/05/01(火) 02:08:06.56 ID:Un3I0C0S
>>948
100MHz 1GS/Sの意味で無くて
PICで作ったオシロは、そういう言い方すると、どのぐらいの性能なのかな?と思って
964774ワット発電中さん:2012/05/01(火) 02:50:32.00 ID:1eFPmEVh
AVRとPICの利点欠点って何
965774ワット発電中さん:2012/05/01(火) 02:51:57.69 ID:1eFPmEVh
>>961
両方使ってるから両方のスレに居るわ
966774ワット発電中さん:2012/05/01(火) 04:59:07.12 ID:eDJPRewD
>>964
色々使ってるようなので聞きたいけど
PICとAVRあとArduino?何かを作ろうとした時にどういう基準で選択してるの?
967774ワット発電中さん:2012/05/01(火) 09:19:27.52 ID:AZNNq9ck
みんなPIC以外は何使うことが多い?
968774ワット発電中さん:2012/05/01(火) 09:59:34.14 ID:owfGNcYZ
ロジックICを沢山繋げたりとか・・・・
969774ワット発電中さん:2012/05/01(火) 12:36:09.54 ID:+8pybBDW
>>967
汎用ロジックとか、CPLDとか、PCとか。

>>963
PIC内蔵のA/Dコンバーターで読み取ってPCに送信しているだけなので、
当然ながら遅いです。さっきプログラムを見てみたら、サンプリング
レートが24 Khzでした。
970774ワット発電中さん:2012/05/01(火) 14:08:29.76 ID:pLanP1Ef
>>967
CPLDやロジックICやAVRやOPアンプやトランジスタなど色々
971774ワット発電中さん:2012/05/01(火) 15:00:52.92 ID:m4ppC+a6
石と木を材料として比較するなら理解できるし
石造りの家と木造の家を住み心地で比較するのもわかる
だが石と木造の家を比べてどうする
>>944は言いたかったんだと思う
なのに>>949がっ
972961:2012/05/01(火) 15:57:55.68 ID:jg6WbgEh
>965
PICもAVRも両方使った事あるなら、なんで>942,964を聞くの?
触ったことない人が>942,964の質問するならしょうがないけど
使った事あるなら、1行質問じゃなくて
「自分は〜と思うけどみなさんはどうですか?」くらい言えないの?
973774ワット発電中さん:2012/05/01(火) 20:27:10.04 ID:YOLd1EzT
秋葉の秋月店頭でpickit2の実験基板つきが\3500で売られてるよ。
実験基板なしと値付け間違えてんじゃねーのと思ってわざわざ店員に確認した
けど、その値段で間違いないと言われた。

通販ページだと実験基板つきは今でも\5000なんで、直近でpickit2買おうと思っ
てる人がいたら、秋葉まで出れるなら秋月店頭での購入がお勧めかも。


でもまあ、値札ミスだろうなぁ。確認した店員さんが詳しくなかったんだろう
なぁと思う。
974774ワット発電中さん:2012/05/01(火) 21:57:51.81 ID:CYxMWuoE
みなさんお使いのコンパイラは下の計算だとどんな値が返ってきますか?

x = 1;

y = 0;

x = x / y;

x?

よろしくお願いします。
975774ワット発電中さん:2012/05/01(火) 22:00:59.36 ID:cSPTX2fZ
データ型は明示しないと駄目。
976774ワット発電中さん:2012/05/01(火) 22:02:11.07 ID:cSPTX2fZ
あっ、0割り算か。
可能性としてあり得る場合は通常はガード入れる。
977974:2012/05/02(水) 00:33:54.87 ID:YSb4DEl+
自己解決しました
>>976さん、ありがとうございます

只今、グラフィック液晶に過去128分の車速を切れ目のない折れ線グラフで表示する自作関数作っていますが、やっと出来上がりました。
まるっきり0からのC言語でしたが、1ヵ月で低レベルなプログラムならなんとかできるようになりました。
このスレではいろいろと質問ばかりでしたが皆さん凄く親切で感謝しています。
978774ワット発電中さん:2012/05/02(水) 01:02:49.74 ID:oqyuSxU3
>>973
PICkit3が売れて、2の方は売れ残ってるからじゃない?
979774ワット発電中さん:2012/05/02(水) 01:30:22.09 ID:y47P3E8u
>>977
mbedつかってみては?
最先端は楽だべ
980774ワット発電中さん:2012/05/02(水) 10:22:17.77 ID:c7zriEUo
>>978
pic2のほうがいいよw
>>977
mbedつかったことない?どっからはじめるとい?
981774ワット発電中さん:2012/05/02(水) 11:23:52.28 ID:y47P3E8u
board orange買って来てprintfやってビビるとこかは始めればよいよ
982774ワット発電中さん:2012/05/02(水) 15:09:33.18 ID:5RkTAEo3
PWM信号を読み取り、電圧に変換出力するプログラムと回路を下さい。
よろおね
983774ワット発電中さん:2012/05/02(水) 15:32:57.04 ID:l7aRfOyS
なにその丸投げ
984774ワット発電中さん:2012/05/02(水) 16:03:10.08 ID:y47P3E8u
電圧計でよくね
985774ワット発電中さん
LPFを使う