東海自然歩道を徃く7(柘植〜石水渓)

前回言ったとおり今回のルートは鈴鹿峠を越えることになります。
移動距離も鞍馬〜大津京の時より長くなるので足回りも万全にして挑みました。!
(ってこの記事書いてる時点ですでに西藤原まで行ってるのですが…)

un
↑出発地点の朝の柘植駅。逆光は勝利!
 JR柘植駅をここまでカッコ良く撮れる人間って私くらいしかいないと思う!

un
↑今回はまず"ぞろぞろ峠"を越えて加太不動滝までいきます。

un
↑前回の離脱ポイント"山の辺の道"との分岐点です。鈴鹿峠まであと約19.5kmか…

un
↑さっきの写真から約5分後…鈴鹿峠まであと約20.5kmか…あれ???

un
↑壬申の乱古戦場跡ですって。あえて撮ってませんがここってちょうど車から物を
 捨てやすいポジションにあって古戦場跡の表記よりもでかい不法投棄警告の標識が
 おわします。

un
↑奥与野森林公園入口です。東海自然歩道は入ってすぐのところで右折し
 ぞろぞろ峠を目指します。

un
↑外気温が氷点下からか流水が凍結が見られます。一部では完全に凍結した所も。

un
↑小渓谷を横にひたすら上っていましたがこのあたりは坎霞渓(かんかけい)と
 呼ばれる場所だそうです。このあたりでルートは何度も渡渉になるようです。
 …ってことは…

un
↑げげっ!やっぱり…!ガッチガチに凍結してる…(やっぱアイゼンいるかしら…)
もちろんこんなのまともに登れないのでねむいさんどうしたかと言うと禁じ手
 ですが、凍結してない道脇の部分をジグザグに蹴りあがっていきました。

un
un
↑ぞろぞろ峠に到着です。この周辺は痩せた尾根道の上に雪深いので滑落しないよ
 うにひやひやでした。(やっぱアイゼンいるかしら…)

un
↑いたるところで小滝や流水が凍結しています。ねむいさん近づいて触れることがで
きる凍った小滝にふざけてぱんちしたら凍った滝がグワッシャッと一気に崩れおち
 てびびって即効逃げだしたりしてました…
 
un
↑アップダウンを繰り返し加太不動滝の近くまで迫ってきました。
 この写真は不動滝を上から見た部分です。

un
un
↑加太不動滝です。水量が多いからか主流はさすがに凍結していませんでした。
 真近に見ることができるので小規模ながら大迫力です!ちなみに滝を見るには自然
 歩道のルートからすこし外れ、凍結して危険度の上がった細い橋を渡らなければなら
 ないのですが…なんかおっきいガレばっかでえらく危なっかしいなと思ったら…

un
↑!!!(元のルートに戻るときに気づいた)

un
un
↑さらに駆け降りて大日滝も越え不動滝の入口(車が乗り入れられる終点)までやって
 きました。ここから先は雪に覆われた小渓谷に沿ってひたすら鈴鹿峠目指して走り
 抜けます!

un
un
↑平坦で走りやすいトレイルを3km程走ると今度は下りの舗装路に出ました
 うりゃりゃりゃりゃー!!

un
↑地図上の加太板屋にあたる地点で橋を渡り川と離れたあたりからバンドウ山目指して猛烈な
 登りがはぢまりやがりました…はひ…画像は途中にある休憩ポイント…

un
un
↑ねむいさんの大好きな腐り落ちた木階段や他の方の山行レポートにも良く掲載され
 ている特徴的な鉄塔をこえてずんずん登っていきます…はひ…

un
↑変わって猛烈な下りの階段責めを喰らいながら進むと舗装道路と落ち合いました。

un
↑ココがバンドウ峠???

un
↑少し進んで大きな道に出ると許されざる角度に傾いたハウスが...

un
↑舗装道路をさらに駆け降りると国道一号線と再び落ち合います。逢坂の関の時と
 同じく専用歩道橋を渡ります。

un
↑歩道橋から見た国道1号線です。

un
↑歩道橋を降りてすぐのこのポイントですが、東海自然歩道の道標が非常に分かり
 づらく国道1号をそのまま北上するかの様に錯覚してしまいますが、それは間違いで
 すぐ右折して少しの間トレイルに入ります。

un
↑ちょっとしたトレイルを抜けると、旧東海道の道(国道1号)を鈴鹿峠入口まで進みます。
 また、この地点には筆捨山を経て関ロッジ->JR関駅へ向かうサブルートがあります。
 所でこの仏像?みたいなのこわいんですけお…

un
↑旧東海道の宿場町であった坂下宿の区域を駆け抜けます。微妙な登坂になっていて
 結構負担が…

un
un
un
↑鈴鹿唄子会館の側を通過します。東海道の宿場町を記した柱が等間隔に建っています。

un
un
↑国道1号を真っすぐに行かず途中でなぜか迂回して疑木階段の山道に入りやがります。
ねむいさん初めて見ましたがコンクリ製のギロチンみたいな急角度の階段も…orz

un
↑国道1号に再び合流する手前にあったお墓が荒れていたのできれいにしておきました。

un
un
↑んでもって旧東海道の鈴鹿峠に本格的に差し掛かります!路の途中にある
 片山神社(跡)を通り急な登坂をずんずん進みます。

un
un
↑旧東海道の名残が未だに見られる個所もありますが、それはすぐに終わり高速道路
 の下をくぐり抜けます。

un
un
un
↑高速道路を渡った先にある休憩所からさらに上ると、鈴鹿峠の解説の看板が!
 "あの場所"までもう少し!

un
un
un
un
↑…ッッついに!
 ネットの写真でしか見たことがなかった、いつか行ってみたかった場所についに!
 やはり実際に目にすると思っていたのとだいぶ印象違っていた感じです。積雪のある
 時期に足を踏み入れたせいもあるのでしょうけど。

un
↑しかし感慨にふけっている時間はありません。冷たい風雪が叩きつけていてここで
 ぼーっとしてるとあっという間に体温が下がってしまいますし、日没までに安全な
 場所まで出ないといけないので膝サポータとテーピングを入れ替えてそそくさと
 この場所に別れを告げました。さよなら、鈴鹿峠。

un
un
↑鈴鹿峠を離れてすぐに三子山に向けて猛烈な登りが始まります。この地点、東海自
 然歩道で屈指の難所だそうですが、痩せきった尾根の上に木製の階段が所々で腐り
 落ちていて確かに危険です。

un
un
↑小休憩出来る所をこえて少ししたら双子山の登山道から離れます。
 一転して急な下りと変わり山女原へと向かいます。…雪道は無駄に体力喰ったり滑っ
 たりしていやなのですがこんだけつもってると下りの際に足への衝撃がかなり和ら
 いで助かりました…。

un
un
↑雪に覆われた農道を下り山女原(あけびがはら)と呼ばれる地域まで出てきました。

un
↑山女原の集落の中を駆けて少しすると安楽越直通の近道とかもしか高原を通る正規の
 ルートの分岐にでます。ねむいさんはもちろんかもしか高原のルートを選択!

un
un
↑かもしか高原への道は途中まで舗装道路ですが、ダムを超えたあたりから山道へと
 変わります。途中の橋を越えると深い雪と九十九折りの本格的な登りになります。

un
↑かもしか高原はその名の示すとおりニホンカモシカが生息する地なのですが、残念
 ながら姿を見ることはできませんでした。しかし雪道に蹄の踏み跡があったりふんが
 落ちていたのでその存在の形跡を確かめることができました。
 もちろん私が野グソしたわけではない。

un
un
↑きつい坂を15分ほど登ると急に周りが開けて、一面が雪に覆われたかもしか高原の
 てっぺんにたどりつきました。ねむいさん何もかも忘れて雪にダイブしたかったの
 ですが、我慢して先に進みました…。開けた場所は風雪が叩きつけてあまり留まっ
 ていられません…ぶるぶる。もちろん景色なんぞ一面真っ白で何にも分かりません!

un
↑で、かもしか高原を離れ安楽越へと下りましたが、ここが今回の行程で一番雪が深
 かったです。もう膝までザクザク嵌って全く先に進みません!トーホグに住んでるとしあ
 き君ならこんなの屁なんでしょうけど私にとってはかなり過酷です!雪庇を誤って
 踏みぬいでズッコケないように慎重に歩を選び下りました。

un
un
↑ほどなくして安楽越に到着です。なんだこのOKYってのは…まぁいいや
 ここから石水渓まで4km丸々ひたすら舗装道路の下りです。アイスバーンをよけな
 がら一気に駆け降りました!うりゃりゃりゃー!!

un
↑ノンストップで駆け降りて行って、路面を覆っていた雪もかなり減ってきたころ、
 石水渓の野外宿泊施設に到着しました。…さぁ次は椿大sh…

un
↑ぇ…10km以上あるの…もう16:30だし今までで一番走ったし行程的に切りもいいし
 今日はこれくらいにしといてあげましょうか〜

un
un
↑次回のエントリポイントはこの仙ヶ岳登山口になります。第二名神高速道路の陸橋が目印。
 次回の湯ノ山温泉までは24km程の楽な行程の予定です。温泉とかも入っちゃったりして♥
 さてと池山西まで下りてバスに乗って亀山駅にかえr…

un
 !!!!!(※当日は日曜日でした)
 こっからJR亀山駅まで約12kmの罰ゲームみたいな追加ロードメニュー開始!!!orz

un
↑やべーどんどん暗くなってきてる…

un
↑燃料切れ起こして平坦なロードですら走れなくなったので非常用で温存していた虎の子の
 SAVASピットインリキッドを摂取して元気100倍になった後再度走る!!!あともう少し!!

un
↑真っ暗になった亀山の市街地で親切なおばさまやラーメン屋のお兄ちゃん(池麺)道を教えて
 もらいつつ、ついにJR亀山駅に着いた…今回はマジでハードだったぜ…



ってわけで今回はねむいさんのリサーチ不足で最後の最後でむだに距離を増やして
しまいましたが、それでも東海自然歩道のルートだけでも45km強あったのでかなり
満足できる内容と実感しました!
un
…57kmですか…完璧に対策していたとはいえよく負傷しないで最後まで持ったな私の足…

今回記録したNMEAの生ログはこちらに
間引きしたGPXのデータはヤマレコの私のページにあります


次回はいないさんの誕生日の次の日に休みをとって(※地域バスが日曜休日運休のため)
石水渓から湯の山温泉を目指します。行程としては先に述べたとおり、たったの24kmで
楽勝なので、湯の山温泉でゆったりと温泉につかってみたいと思います♥


…しかし…

XMEGAを使ってみる4


たぬ

たぬ

たぬ!
ねむいさんもついにたぬたぬのOWNERになれた…
良いことあると良いですね〜♥法明院で見たとき以来惚れこみました♥
ちなみにこの子、前回たぬき村行った時にゲッツしたと言っていた物です!





…さて本題、Windows上でGCCにてAVR/XMEGAの開発が手軽にできる"WinAVR"は、
20100110版で開発は終了しており現在はATMEL公式から配布されているAVR ToolChain
へとひきつがれています。
そして以前から非公式で海外の掲示板で出回っていた有用なProgramMemoryアクセス
の為のマクロが今回から正式にとりこまれていたりするのでここいらでちょっとまとめて
みたいと思います。



そもそものはじまりはXMEGA触り出した去年にさかのぼります。いろいろ文句垂れなが
XMEGAを動かして来たわけですがARMではお茶の子さいさいでできたはずの"FontX2ファ
イルのような大容量のデータを配列として埋め込む"ことができないという点で躓いた
ことからでした。これAVRの制約というよりAVR-GCCの制約と言った方が正しいのですが、

1.引数が32767以上の配列を確保することができない
2 uint32_tの配列としてバイト数を稼ごうとしてもそもそも合計32767バイト以上に
  なる配列を確保することができない
3.64kb以上のメモリ領域のアドレスに通常のポインタを使って容易にアクセスができない

と分かる範囲で上げましたが、普通はAVR使いの人はフラッシュメモリ容量64kb以下の
AVRを使いフォント等の大容量のデータはSDカードに置いてそこからアクセスするとい
う手段が常套となっていて今回私のように横着してCの配列として大容量のデータをフ
ラッシュに焼きこむようなことを安易に考えるとこの問題に引っかかるというわけです。


これ何とかならないかといろいろ検索して調べていると数年前に「PIC AVR 工作室」
のnekosan氏も同じ問題に当たられていたようでこの制約について非常に深い考察を
されていました。
nekosan氏は最終的に制約に引っかからないようにいくつか分割した配列としてアクセ
スする方式にされたようです。また同日のコメント欄にはnekosan氏とChuck氏のやり取
りがあり、その中で中にGET_FAR_ADDRESSという単語が出てきています。
これは後述しますが"3."の制約を解消するための非常に重要なキーワードとなります。


さて、制約はわかったけど実際どうすりゃいいのと言う話になりますが、私はフォント
ファイルを直接オブジェクトにして焼きこんでCからはインデックスだけ引っ張って来たら
いいんじゃね?と考え、さらにググってみるとavr-freaksのフォーラムにavr-objcopyで
行う方法の議論がありました…って何年も前だけどこれあっちではFAQレベルなのか…



置き場にあるxmegaのFatFS+TFT-LCD表示のデモにはmakeファイル中に具体的に美咲フォ
ントをAnkと漢字ともにオブジェクト化しelfに取り込むための記述をしてあります。

んでこれをCからアクセスするためにはavr-objcopyで吐かれたラベルを参照すればおkです♥

…と言いたい と こ ろ だ が!

64kByte以上プログラムメモリを持つAVRにおいて、64kByte以上の領域にいつもの調子で
アクセスしようとするとお次は"3."の制約にあたってしまいます。
そもそもavr-gccはアドレスが16bitとして処理されていて、64kb以上のメモリ領域にア
クセスする時は非常に都合が悪いです(int型が16bitなのからお察しできると思います)。
たとえば…

prog_char inaisan[] = "daisuki!";

というプログラムメモリ上のデータを参照する際にこのデータがプログラムメモリ上
の64kByte以上のアドレスの領域にあった場合、

pgm_read_byte_far((uint_farptr_t)inaisan);

ってやっても配列inaisanの頭のデータ'd'は読み出せません。本来のアドレスから65535
さっぴかれたアドレスにある頓珍漢なデータが返ってくるでしょう。
これは本来24bitあるはずの配列のインデックスのアドレスを頭8bit分カットした16bitで
渡してしまうからです(ポインタ変数を介在させてもポインタのサイズも16bitで、16bit分
のアドレスしか表現できないから同じ結果)。
これを解消するのがGET_FAR_ADDRESSというマクロで、uint32_t型の値を返します。

このマクロを通すとpgm_read_byte_far等のELPMを使う関数へ24bitアドレスとして正常に
値を渡すことができます。また、このマクロは長らく非公式でしたが現在ATMELから配布
されているAVR Toolchainではpgm_get_far_addressと名をかえて公式にとりこまれる
こととなりました。めでたしめでたし。
…私の説明分かりずらいから各自pgmspace.h見た方が早いと思います…。


↑んで、見た目は去年と全く変わり映えしませんが上記のすべてを反映させて、
 AVR Toolchainでビルドして動かしたXMEGAのデモさん。
 やっぱARMの方が組みやすいなぁ…と思うことひとしきり




つらつらとまとまりきれないまとめを書いてみましたが、WinAVRからAVR Toolchainに変
わってから気づいたことのTipsとか

●unixライクなツール群
 WinAVRにはARMマイコンのビルドにも重宝したutilsフォルダ内のmakeを含むunixライ
 クなツール群があったのですがATMEL公式から配布されたAVR Toolchainには存在
 しません!代わりにavr-gccと同じフォルダに同等の機能のものが一切合財ぶち込
 まれていますが、使いやすさを考えるとWinAVRのutilsフォルダだけ保存しといて旧来の
 WinAVRよろしくビルド時にはそこからmake呼び出せられるようにすればモアベター
 だと思います。私みたいなコマンドラインビルド野郎向けですがー!

20121130追:
 WinAVRはもはや時代遅れです。WinAVRについていたutilsの代用はこちらをご覧ください

●EBIのSRAMモード
 24ビットアドレスのアクセスの問題はプログラムメモリの時の問題だけではなく、もち
 ろんI/O領域にも波及しやがります。厳密に言うとAVR Toolchainとはあんまし関係ない
 のですが、ATMEL配布のXMEGAのEBIのSRAMアクセスのデモが地味にバージョンアッ
 プしていて、pgm_get_far_addressよろしく24bitアドレス用のマクロが用意されています。
 
 ねむいさんxmega使ってこれ以上やる気ナッシングになってしまいましたからあんまし関
 係ないですが…

●delay.h
 AVR Toolchainに変えたらmakefileで正しくクロック周波数を設定してヒューズも間違
 ってないのに以前と違ってちゃんと動かねぇ!1!とお嘆きの方、utils/delay.hをよ〜く
 見てください。
 HAS_DELAY_CYCLESというdefineを1から0にすると幸せになれるかも…。若しくは私みたい
 makefile中でavr-gccにHAS_DELAY_CYCLES=0の定義を渡してやるとよいです。

or

 この問題、意外と根は深いようですね…

Go to top of page