PICマイコンのエラッタについて語るスレ
/Microchip ./|
/ ( ゚∀゚) / |
|~ ̄ ̄ ̄ ̄ ̄| /
|/Z./Z./Z./Z_|/ ||
||. ||. ||. ||
大人気のPICマイコンのエラッタについて語るスレ。
PICマイコンのエラッタについて語りたいのに語れない。
PICの熱心なファンがそういう話題を妨害する。
もう大丈夫。そんなストレスとはおさらばだ。
いつまでだっても問題が修正されないことを話題にするもよし。
よりよい回避策を話題にするもよし。
他のPICスレからリンクを張られるぐらい、実りのある議論ができるといいね! いまな、
すごくオナラがしたいねん
ほんでもな、
今な、デート中で車の中やねん
上手いこと尻筋調整してな
スカシにする事は可能やねんけどな
昨日な、肉料理ガツガツ食べたねん
そりゃごっつ臭いスカシになるかも知れへんねんな ・ADのbit精度不足
・UARTの送信ダブり
他にある? 送信だぶりのサンプルコードよろ。
送信割り込みのxc8で。 Part54-258よりUART送信ダブリ(ポーリング処理版)
@AABCCDEEFGGHIIJKKLMMNOPQRSTUVWXYZ[\]
----
#pragma config FOSC = INTOSC, WDTE = SWDTEN, CPUDIV = NOCLKDIV
#include <xc.h>
unsigned char ch = 0;
unsigned char wait = 0;
unsigned char i = 0;
void main(void){
OSCCON = 0xFC;
SPBRG = 0x67;
BAUDCON = 0x08;
TXSTA = 0x24;
RCSTA = 0x80;
NOP();
while (1){
while (!TXIF);
for (i = 0x9D + (wait>>4) ; i-- ;);
wait++;
TXREG = '0'+ (ch++ & 0x3F);
}
} 割り込みでも起きるのかなぁ。
modBusのテストツールをこれで設計したので心配だわ。
パリティエラーを作れるのでテストツールにはピッタリと思ったが。 TXIF割込ハンドラ内で送信ダブリを回避しようとするならこんな感じ
・タイマを使い、FIFOがカラにならないタイミングを狙ってTXREG書込
・TRMTをモニタしてシフトレジスタがカラになってからTXREG書込 エラッタエラッタ連呼してた奴はどこ行ったのかねえ
いくつか回避方法があるとか言ってたけど
せっかくご高説を傾聴させてもらうに相応しい場所を用意してくれたのに 売上妨害が目的だったのかな?
エラッタそのものの技術的分析や対策検討に興味ある人なんていなかったんや… 前からいる奴と同一人物だったら
仕事でPICを使ってエラッタで苦労させられたような感じだったな
私怨と言ったらブチ切れてた こっちにいるのもアホばかりか
アホがアホのレスを重ねても利口にはなれない ユニークで個性的な確実稼げるガイダンス
暇な人は見てみるといいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
GO73K 485のエコーバックで最後のキャラクターを受信して送信ドライバーをdisableにしているが、希に最初のキャラクターが送信していないキャラクターでその次から先頭の送信キャラクターになる。
オシロでも確認した。
これって送信ダブリ現象ですか?
送信、受信共に割り込みです。 黙ってても型番とか書こうよ
送信受信は全てPIC側から見た場合? オシロ波形をアップするとか
データの具体例とか
ボーレートとか
回路図とか >>24
すみません情報が少なくて。
正常な時の波形です。
https://imgur.com/DUIL99N
[ISDUの No service]で0xf1,0x94,0x00が続きます。
異常は0xf1の前に0x98があります。
https://i.imgur.com/jqYjKSe.jpg
エコーバックで送信データと異なるので送信割込みを止めますので崩れます。
PICは秋月のPIC18F48K22基板です。
RS485は嘘ですが半2重で通信していることは同じです。
エコーバックはしています。 良く話題に上がるエラッタでは無い
送信データキューに書き込んだバイト数
TXREGに書き込んだ回数
受信したバイト数
が分かるコードを埋め込んで発生まで待ってみよう
エラーでも止めないほうが数えやすいかも
テスト用とは別のUARTで定期的に数字を吐き続けてもいいし、
一晩ほっといてから朝ブレークしてデバッガで見るのでも良い あっちのスレでも情報を小出しにするなって書かれてるのに
型番くらい正しく書けないかなあ ごめんなさい。
毎日、サントリーのSTRONG ZEROダブルグレープフルーツの500mlを3缶名なん酔いで潰れます。 なにもPICなんか選ばなきゃそんな事にはならないのに…… >>28
海外ではアルコール許容量と明確に言われている1日のアルコール量の概ね5倍ですね。 エラッタが多くても利用者多いって事は、相当人気有るんだな。 秋月でDIP品が安価に買えるから
素人受けがいいだけだよ >AVRなどに
PIC16Fでカバーできない用途だったら、今ならSTM32使うかな。
Arduinoで実験、という用途なら結果的にAVRを使っていることはあるけど
それはPICに飽き足らなくなったから、ではないし。 最近の機器内蔵アンプは普通にD級だろ
文句言ってる人はカマデンみたいな自作キットや怪しい中華オーディオの話をしているように見える PIC以外のチップでいったい何を作っているの??
そこが知りたい!!! >>39
不揮発性メモリーとか、パワーMOS FETとか、FETドライバーとか、 16F887のSPI送信でと8bitの送信に11bit分待ってから次のバイト書き込まないと
初めの送信データが壊れるんだけど何だろう
オシロ引っ張り出して波形見なきゃわかんないなぁ >41
何で送信終了のフラグを待たないで経過時間で次のデータを書き込む必要があるんだい?
SPIが送信を開始するタイミングはチップの内部的な事情で少しは遅れる事があるかもしれないし、
それをオシロで観測することが出来たとしてもあまり意味があるとは思えない。 >>42
LCDにデータ送信する回路を作ってて出来るだけ速くデータを流し込みたかったの。
当たり前だけどフラグはちゃんと見るべきですよね。
内部事情があるのは初耳だけど、データシートにも保障されることが書いてない以上所定の手順に従うしかないかぁ。
作ったのはこんなの↓
ttps://www.nicovideo.jp/watch/sm31168416 PIC18F26k22とかはUARTのバグあるね。
PIC16F1705はコンパレータが立ち上がりエッジ、立下りエッジ指定しても
両方の割り込みがかかった。
どの 途中で送信されてしまった。
どのPICでもI2CのIFが帰ってこないこともある。
これはバグというか仕様かもしれんが。 非公開のもあるからねえ
他の型番のには記載してあったり
管理がめちゃくちゃ main.cが書き換えられてしまった。 自失呆然、、、 MCCめ この野郎! PIC18F87K22のEMBはPLL ONにするとALE出て来ねぇぞ。 エラッタにも無いし、どうなってんだよ? たく
16MHzで動かすしかねぇ。 PIC32MZ、水晶発振出来ないチップを出荷すんなよ。
対策「外付け発振器を使用してください」 真田さんならその実装パターンも用意してるんだろうか。。。