jl7gmnのblog

yahooブログから移行してきました。アマチュア無線を中心としたブログです。

2013年05月

デジタル液晶時計修理

デジタル時計の液晶が壊れてほかしてあったのを修理してみることにした。デジタル時計の液晶の故障ではなかった。液晶と回路基板の配線で使用されているフレキシブルケーブルの基板との接続箇所を強く抑えると表示が直る、単純な接触不良が故障の原因のようだ。インターネットでググッテ見ると、通常フレキシブルケーブルは120℃ぐらいの温度で基板の銅パターンに熱溶着接続しているのが手法のようだ。ここで熱溶着をさせるためのいいツールがあるのを思い出した。最初は半田ゴテでと思ったが温度が300℃以上と高すぎる。ホットボンドのヒーターが少し温度が高いが(160℃)使えそうだ。早速ホットボンドのピストルガンのこて先でフレキシブルケーブルを押さえつけるように少し圧をかけてみた。あまり長い時間抑えすぎるとフレキシケーブル自体が溶けてしまうので適度なスピードで動かしていく必要がある。本当は動作させながら修理するのはNGな手法だと思うが、あえてやった。電池を入れて液晶を見ながらホットボンド用のコテ先を当てていくと、消えていた液晶の数字部分が表示しはじめた。うまくいったようだ。結構液晶の表示がNGとなって捨ててしまう時計とかが過去何個かあった。イメージ 1
イメージ 2

イメージ 3今回の時計のようにフレキシケーブルの接触不良が故障の原因の場合はホットボンド用コテで修理できる。これでこのデジタル時計ももう少し捨てられず、飾られるようになったのでした。めでたしめでたし。









PICその10

DEBUG EXPRESSのLESSONの動画アップロードが順調なので、ひとまずLESSON5でのコンパイルのエラーについて思い出したので記す。特にBOOLの使用がXC8ではないため、単にコンパイルしてもエラーでFALSE、TUREで引っかかると思います。特にBOOLについては明白にXC8のコンパイラでのユーザーズガイドでサポートは無いと断言されていました。以下原文:
The __Bool type is not supported on the MPLAB XC8 compiler.if you want to set a bit variable to be 0 or 1depending on wheather the large integral type is zero(false) or non-zero(true),use the form: bitvar = (data !=0);
ないものは、ないのだ!だがところが、ですよ。先人は使用できることをすでに発見していました。ということで、何かというと、他の人のブログからの情報です。#include<stdbool.h> 追加で boolタイプがOKとの事です。まずは信用して、書いてみてください。まずそのままだコンパイルはとおりますが、ビックリマークエラー表示が出ると思います。この#include<stdbool.h>では 小文字でのbool、false,trueです。大文字は識別されてビックリマークとなります。よって、プログラム中の大文字のBOOL,FALSE,TRUEをすべて小文字に書き換えて、コンパイルエラー表示なしのOKとなります。(思うに、このヘッダー内の定義を大文字で書きかえればそのままでもOKですけど?マイクロチップ社では小文字にしたみたいです。何か訳ありでしょうネきっと!)気持ち悪いビックリマークがなくなると、ほんとほっとします。
 ちなみにこのヘッダーの中身は以下の通りでした。見ればなーんだなんですけど...
-------------------------------------
#ifndef __bool_true_and_false_are_defined
#define __bool_true_and_false_are_defined
typedef unsigned char bool;

#define true 1
#define false 0
#endif
-------------------------------------
またこのレッスン5でのヘッダーのインクルードではオリジナルの#include "p18f45k20.h" でも #include <xc.h>
のどちらでもコンパイルエラーは出ません。
なお、オリジナルの大文字でのBOOL、FALSE、TUREでどうしてもコンパイル通したい場合は、あります。あります。この場合は次のヘッダーを記載します。先の#include <stdbool.h>は削除してください。
#include<GenericTypeDefs.h> をヘッダーとしてインクルードします。これで、オリジナルのサンプルコードままでのコンパイルが通ります。このヘッダーは実は汎用の型定義ヘッダーで対象が以下のように記載されています
Processor:PIC10,PIC12,PIC16,PIC18,PIC24,dsPIC,PIC32
Compiler:MPLAB C Compilers for PIC18,PIC24,dsPIC,& PIC32
             Hi-Tech PICC PRO,Hi-Teck PICC18 PRO
ソフトウェアライセンスの同意.....あと省略
ということで、各PIC用としての汎用型定義のようです。
コンパイルが通るとLEDの点灯箇所が次々と移動して行きます。この状態では一方向へのローティト動作ですが、SWを押すことで、方向が転換します。
以下PIC18F45K20 DEBUG EXPRESS LESSON5 の動画です。
SWを押したタイミングが分りにくいですが、LEDの点灯していく方向が変わります。


PICその9

PIC18F45K20 DEBUG EXPRESS LESSON2 動画のアップです。
LESSON2 も少しかえてます。LEDがLATD7だけでしたので、もう一つLATD6を追加して交互にブリンクさせました。Hi!

PIC18F45K20 DEBUG EXPRESS LESSON3 動画のアップです。
LESSON3はオリジナルのままです。

PIC18F45K20 DEBUG EXPRESS LESSON4 動画のアップです。
LESSON4はオリジナルのままです。ボタンを押したときにチャタリングがあってLEDが次を飛び越しています。
動画のアップで時間を忘れてしまいました。いかん!、いかん!
つづく

PICその8

PICのブログ用にということで、ユーチューブの動画の貼り付けの練習をやってみた。適当な動画を貼り付けるので気にしないでほしい。テストです。
うまくいったかな?
決定を押して確認してみるので、いったん抜けます。
うまくいきました。なのでPICのLessonの動作動画をユーチューブにアップしてみようかと思う。動画として可能なファイルは、拡張子で.MOV .MEPG4 .AVI .WMV .MPEGPS .FLV .3GPP .WebM とのこと。私のカメラの動画は.AVIなのでそのままアップできるようだ。容量では MPEG4に変換した方がサイズが小さくなるので、いずれ変換してMPEG4でアップするつもりだが今のテストではAVIのままやってみようと思う。なのでいったん動画撮影するのでブログ投稿から抜けます。 
ユーチューブのアップロードしたPIC18F45K20DEBUG EXPRESS Lesson1の動画を貼り付けてみます。
少し動画アップロードに時間がかかるようだ。
動画の処理が完了して視聴できるようになりましたらメールでお知らせいたします
というような設定も選べるらしいが、メールを見るのは面倒、アップロード画面で完了がわかるのでので不要にした。いったん投稿から抜けて、確認動画が見れるか確認してみる。................数分後
 動画は、きちんとアップされて、再生できました。動画自体はカメラを固定していないので、手振れがあるのと、フォーカスがあっていないところがありましたが、無事にPIC18F45K20 DEBUG EXPRESS Lesson1のサンプル動作の動画が見れるようになりました。点滅がオリジナルと違います。オリジナルは、単純に点灯ですが、分りずらかったのでLEDが一つおきで交互に点滅するように変えています。本日は、YOU TUBEの動画アップロードとブログへの貼り付けをしてみました。

PICその7

いったん休んでいたPIC18F45K20のレッスンサンプルのデータのブログからのダウンロード方法を調べた。何かYahoo!ボックスなんぞなるものがあるらしいので、登録して使うことにした。5Gまでの一般フリーでの使用開始とあいなった。ためしに今ダウンロード用にフォルダ作成、ファイルアップロードとやってみる。(ボックスの登録はちなみに、ヤフーIDとパスワードがあれば即利用できました。)
 ボックスの既設の共有フォルダにある下記のフォルダ(MPLAB_X_Project)を公開設定してみた。フォルダの共有は50Gの登録に変更が必要らしいので、共有はあきらめ、公開の設定としました。短縮URLを発行で以下のフォルダ名と同じ文字にリンクを挿入で完成です。何か文字をクリックするとダウンロードできそうな雰囲気は出てきた。それらしく見える。?確認しながらブログを書いているのでログインログアウトといったりきたり少しややこしい。いったんブログアップして、ログアウトして確認してみる。通常状態でマイブログを一般ユーザとして閲覧したりログインしてまたブログを修正モードで開いたりと行き来するためです。いずれにしてもできたようだ。

ダウンロードファイルのリンク先->   MPLAB_X_Project  この階層の下にLesson1からLesson12までのコンパイル、ノーエラーのサンプルを置いておきました。個人の責任で、ダウンロードして参考にしてみてください。

なんかうまくボックスに飛んでいってアップロードしたフォルダとファイルが見える。ここでは実際にいったんブログからログアウトし、一般の状態でダウンロードできるか試して見た。結果は、まったく問題なくMYPCのダウンロードフォルダ内にデータが保存されました。まずはXC8コンパイラでのDEBUG EXPRESSの全Lessonをダウンロードできるようにしておきました。(Lesson6はLesson5のサンプルを使った、デバッグレッスンですのでLesson6のサンプル自体はありません。)オリジナルとは少しLEDの点灯方法等を替えてあるものもあります。とにかくコンパイルノーエラーと文面だけではあれでしたので。いつダウンロードできるようにするの?今でしょ!と催促された気がしないでもないが、MPLAB_X_IDEとコンパイラXC8のDEBUG EXPRESS用、動作するサンプルのダウンロード対応化ができました。今後のサンプルの公開ダウンロード化はひとまず対応できるようになったということで今日は終了。今回のサンプルファイルのサイズは合計で111.9KBで5G中ではゴミみたいなサイズだ。使用状況:0.1%使用(111.9KB/5.0GB中)と画面右上に表示されています。当面ファイルサイズは気にしなくてもよさそうだ。。案外ユーザーに優しく、簡単なシステムでとても使いやすいヤフーボックスでした。Yahoo ボックス Thanks!

アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード
  • ライブドアブログ