ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

組み込みコミュの教えて下さい

  • mixiチェック
  • このエントリーをはてなブックマークに追加
突然のトピ立て、失礼します。
また、本コミュニティと主旨違いの場合、遠慮なくお申し付けください。削除します。

PIC18F4525をアセンブラでプログラム作成しているのですが、EEPROMを使って電源脱落した際に復帰するようなソフトを作成しようとしています。

ですが、EEPROMの読み込み、書き込みがうまく行われていないようなのです。

後閑先生の本から読み込み、書き込みルーチンを打ち込み、PC上でシュミレーションをしてみたのですがきちんと書き込めていない様子・・・

EEPROMを保管するレジスタにh’ff’が書き込まれているのは確認できてはいるのですが、それさえもきちんと行われているのかどうか・・・

初期コンフィグにて、必要なところは設定したはずです。

それ以外にも初期設定にて必要な要素があるのでしょうか。
また、EEPROMの読み込み、書き込みには特別なやり方を使っているのでしょうか。

よろしくお願いします。

コメント(15)

毎度JOです。
PIC18F4525
http://www.microchip.com/wwwproducts/Devices.aspx?product=PIC18F4525

データシート
http://ww1.microchip.com/downloads/jp/DeviceDoc/jp020241.pdf
75ページ辺りから記載が有ります

EEPROMメモリの初期値は"FF"ですので書き込まれたデータかは「不定」ですね

データシートに全てが記載されていますから、先ずは読み込んで見ましょう
>>[1]

ありがとうございます。
やはり不定ですか・・・そんな気はしていたのですが・・・
確認してみます。
紆余曲折した後、完成しました。

原因ですが、読み込み時と書き込み時のアセンブラプログラム上のエラーでした。
格納先アドレスの指定ミスにより格納できず、初期値を読み込み&書き込みをしていて失敗していました。

MOVF ○,×

と指定せねばならないものを、

MOVF ○

で完了していたのが原因でした。情けない・・・orz


お手数おかけしました。
JO_Oさん、アドバイスありがとうございました。
 はじめまして。トピ使わせていただきます。
 ある組み込みメーカーのものですが、このたびEtherNetを装備した製品を初めて出荷します。
 当然MACアドレスは取得してあります。
 MACアドレスは原則ユーザーで変更するものではないということなのですが、ユーザーによる変更は全くないわけでもないようです。
 変更できる仕掛けを用意したほうがいいのか、そんなことは気にしなくてよいのか、悩んでおります。
 変更があるとすれば、ユーザーがMACアドレスを持っている場合で、自己責任でということになります。
初めまして
組み込み機器に限らず、変更できるようにしているものが多いように思います。
イーサネットコントローラ自体には、MACを格納するところはたぶん無いとおもいますが、
チップによって、内部ROMに書いてるものもあります。
ただその場合、書き換えはできないのですが、
その場合、その数値を採用しないという選択があるようです。
変更できても、いつでもオリジナルに戻せる機能が必要と思います。
>>[4]

EthernetではなくUSBのケースですが、私が担当している製品では、USBのディスクリプタ(各周辺機器をホスト側で正しく認識させるためのデータ)を製造時に検査装置で書き換えられる仕組みを設けています。これはユーザに変更させるためではなく、製品がシリーズ展開していくとき必要なのでそうしています。

MACアドレスの変更をユーザに許すかどうかは、製品としての(組織としての?)ポリシーなのだと思います。必要性が明確でない機能なら、私は入れたくないですね。テスト項目が増えるのも嫌だし、市場トラブルの種を増やしたくないので。

変更を許可するのであれば、aleckpさんの書いてらっしゃる通り、「工場出荷設定に戻す」という機能を設け、この機能が実行されたときにはMACアドレスも工場出荷設定時の値に戻すというのが、セオリーかなと思います。

>>[5] ありがとうございます。パソコンは変更可能なようですね。一応IEEEから付与されたIDはあるので、基本変更はしないのですが。私のところの場合、起動時にROMからIDを読みだして、RAM上にMACアドレスを書き込んで、以後RAM上のアドレスで動くようにしてあります。「秘密のコマンド」を作れば変更はできるとおもいますが、ユーザーの自己責任ですよね。
>>[6] ありがとうございます。基本変更はしてもらいたくないのですが、IEEEの規定をみると、自前のIDを持っているユーザーが書き換えることはできるようですので、どうしたもんかと、悩んでました。何のご利益があるのかわかりませんが。変更の可能性は残しておいたほうがよさそうですね。
>>[8]

むしろ変更の可能性を残さないほうが良いのでは?
変更できると、偽装されて悪用されるおそれがあると思います。
特に理由がなければ、そういう可能性は潰しておくべきではないでしょうか。

まあもっとも、偽装しようとする輩はまず上位層で偽装しようとすると思いますが。
>>[9] 海外に行った時の話ですが、インターネット接続の契約がどうもMACアドレスで端末を識別しているらしく、Windows標準のMACアドレス偽装で複数のPCを接続したことがありました。そういう意味では便利と言えば便利なのですが、OSがそういう仕組みを提供しているとなると、MACアドレスのユニーク性などというものは意味のないものなのだと気づいた事例でもあります。
>>[9] 変更を許すとすれば、特注仕様でやります。一般には公開しな秘密コマンドを作ることになるでしょう。もっともそういう事案が発生したらの話ですが。
MAC偽装は問題ですけど組み込み業者の責任ではありません。

実際に書き換え出来たほうが責任上は便利です。

ただし偽装なんか知った事かと言うことになりますw
例えばパソコンでも当たり前にMACは変更出来るのです。

ですからパソコン台数を多く見せるのなんか簡単に出来る。

けど文句言わせないでしょ?
https://ja.wikipedia.org/wiki/%E5%B9%87%E5%8A%A9

これが参考になります。

MACをイジる犯罪者がいて
その人に協賛してMACが
イジれるようにすれば
幇助の可能性を問う場合が
あるのが刑法です。

最初からMACがイジれたら
この範囲ではありません。

包丁を作って誰かが殺人しても
問題は包丁を作った人には
ありません。

ただし後になって殺人専用に
包丁を改造すれば問題に問われる
可能性が出てきます。

だとしたら最初からイジれるように
MACを作っておくべきで実際パソコンも
そうなってますね?
>>[14] MAC変更する秘密コマンドをお客に知らせるとしたら、契約書だか念書で免罪符をもらっておかないといけませんね。( ..)φメモメモ

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

組み込み 更新情報

組み込みのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング