{"id":302,"date":"2021-09-27T10:33:57","date_gmt":"2021-09-27T01:33:57","guid":{"rendered":"http:\/\/fischertechnik-education.jp\/blog\/?p=302"},"modified":"2021-09-27T10:33:57","modified_gmt":"2021-09-27T01:33:57","slug":"revolutionpi-fischertechnik-punching-machine-part2","status":"publish","type":"post","link":"https:\/\/fischertechnik-education.jp\/blog\/2021\/09\/27\/revolutionpi-fischertechnik-punching-machine-part2\/","title":{"rendered":"RevolutionPi &#038; fischertechnik \u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3 \u30d1\u30fc\u30c82"},"content":{"rendered":"\n<div style=\"height:55px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large is-resized is-style-default\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-1024x134.png\" alt=\"\" class=\"wp-image-307\" width=\"767\" height=\"100\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-1024x134.png 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-300x39.png 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-768x101.png 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-1536x202.png 1536w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1-1568x206.png 1568w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/wordpress_\u30d5\u30a3\u30c3\u30b7\u30e3\u30fc-1.png 1920w\" sizes=\"(max-width: 767px) 100vw, 767px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-group is-style-default is-layout-flow\"><div class=\"wp-block-group__inner-container\">\n<h2 class=\"wp-block-heading\" style=\"font-size:60px\"><strong><span style=\"background:linear-gradient(to bottom, rgba(128,255,255,0) 90%, #ff6969 90%);\"><strong><span style=\"color:#ff0004\" class=\"has-inline-color\">\u30d1<\/span>\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u3092\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3067\u52d5\u304b\u3059\uff01<\/strong><\/span><\/strong><\/h2>\n\n\n\n<div class=\"wp-block-group is-style-default is-layout-flow\"><div class=\"wp-block-group__inner-container\">\n<h3 class=\"wp-block-heading\" style=\"font-size:50px\"><strong><span style=\"background:linear-gradient(to bottom, rgba(128,255,255,0) 90%, #19baff 90%);\"><strong><span style=\"color:#19baff\" class=\"has-inline-color\">\u3069<\/span>\u3046\u52d5\u304b\u3059\u304b<\/strong><\/span><\/strong><\/h3>\n\n\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B07Z7VQL6C&amp;linkId=6dba22b0f375ca6d7e136d39636946bf&amp;bc1=ffffff&amp;lt1=_blank&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B01N4R1G5B&amp;linkId=2b19eae4c8ff433f94418395cb3233f4&amp;bc1=ffffff&amp;lt1=_blank&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B014I8TVLI&amp;linkId=78079ab66421bfcda9a2411713e7dea4&amp;bc1=ffffff&amp;lt1=_blank&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B07QBZ667V&amp;linkId=612ce51f2254241be93d549e6ae60e40&amp;bc1=ffffff&amp;lt1=_blank&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"800\" height=\"600\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img002.jpg\" alt=\"\" class=\"wp-image-278\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img002.jpg 800w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img002-300x225.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img002-768x576.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u306e\u30b9\u30af\u30fc\u30eb\u30d0\u30fc\u30b8\u30e7\u30f3<\/figcaption><\/figure>\n\n\n\n<p class=\"has-large-font-size\">\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u306e\u8a73\u3057\u3044\u8aac\u660e\u306fYoutube\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\uff01<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"\u3010\u52d5\u304b\u3057\u306a\u304c\u3089\u306a\u3089\u5206\u304b\u308b\uff01\u3011\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u5b66\u7fd2\u30fb\u30a8\u30f3\u30b8\u30cb\u30a2\u6559\u80b2\u306e\u5473\u65b9\uff01\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3 \u30b9\u30af\u30fc\u30eb\u30d0\u30fc\u30b8\u30e7\u30f3 \u30d5\u30a3\u30c3\u30b7\u30e3\u30fc\u30c6\u30af\u30cb\u30c3\u30af\u30fb\u30a8\u30c7\u30e5\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30aa\u30ea\u30b8\u30ca\u30eb\u30e2\u30c7\u30eb\uff01\" width=\"750\" height=\"422\" src=\"https:\/\/www.youtube.com\/embed\/HhAb5up7JjQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><figcaption>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3Youtube\u52d5\u753b<\/figcaption><\/figure>\n\n\n\n<p class=\"has-large-font-size\">\u307e\u305a\u3001\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3059\u308b\u524d\u306b<strong><span style=\"color:#ff2553\" class=\"has-inline-color\">\u52d5\u4f5c\u306e\u6d41\u308c<\/span><\/strong>\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"wp-block-group is-style-twentytwentyone-border has-background is-layout-flow\" style=\"background-color:#ffffff\"><div class=\"wp-block-group__inner-container\">\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi00-1024x576.jpg\" alt=\"\" class=\"wp-image-314\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi00-1024x576.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi00-300x169.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi00-768x432.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi00.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-large-font-size\">\uff11. <strong>\u30b9\u30a4\u30c3\u30c1<\/strong>\u3092\u62bc\u3059\u3068<strong>\u30b3\u30f3\u30d9\u30a2\u30fc<\/strong>\u304c\u6b63\u8ee2\u99c6\u52d5<\/p>\n\n\n\n<p class=\"has-large-font-size\">\uff12. <strong>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3<\/strong>\u306e\u624b\u524d\u306e<strong>\u30d5\u30a9\u30c8\u30c8\u30e9\u30f3\u30b8\u30b9\u30bf<\/strong>     \uff08\u660e\u308b\u3055\u30bb\u30f3\u30b5\u30fc\uff09\u306e\u5165\u529b\u3092\u53d7\u3051\u3066<strong>\u30b3\u30f3\u30d9\u30a2\u30fc<\/strong>\u505c    \u6b62<\/p>\n\n\n\n<p class=\"has-large-font-size\">3. <strong>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3<\/strong>\u304c\u964d\u4e0b<\/p>\n\n\n\n<p class=\"has-large-font-size\">4.  <strong>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3<\/strong>\u306e\u4e0b\u306b\u3042\u308b<strong>\u30b9\u30a4\u30c3\u30c1<\/strong>\u3067\u964d\u4e0b<\/p>\n\n\n\n<p class=\"has-large-font-size\">5.  <strong>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3<\/strong>\u304c\u4e0a\u6607<\/p>\n\n\n\n<p class=\"has-large-font-size\">6.  <strong>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3<\/strong>\u306e\u4e0a\u306b\u3042\u308b<strong>\u30b9\u30a4\u30c3\u30c1<\/strong>\u3067\u505c\u6b62<\/p>\n\n\n\n<p class=\"has-large-font-size\">7 .<strong>\u30b3\u30f3\u30d9\u30a2\u30fc<\/strong>\u9006\u8ee2\u99c6\u52d5<\/p>\n\n\n\n<p class=\"has-large-font-size\" style=\"line-height:2\">8. <strong>\u30d5\u30a9\u30c8\u30c8\u30e9\u30f3\u30b8\u30b9\u30bf<\/strong>\u306e\u524d\u3067<strong>\u30b3\u30f3\u30d9\u30a2\u30fc<\/strong>\u505c\u6b62<\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi01-1024x576.jpg\" alt=\"\" class=\"wp-image-309\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi01-1024x576.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi01-300x169.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi01-768x432.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi01.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u30e2\u30ce\u306e\u4f4d\u7f6e\u3092\u77e5\u308b\u305f\u3081\u306e\u5149\u96fb\u7ba1\u30bb\u30f3\u30b5\u30fc<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi02-1024x576.jpg\" alt=\"\" class=\"wp-image-310\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi02-1024x576.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi02-300x169.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi02-768x432.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi02.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u5f79\u5272\u5225\u306e\u30e2\u30fc\u30bf\u30fc<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi03-1024x576.jpg\" alt=\"\" class=\"wp-image-311\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi03-1024x576.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi03-300x169.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi03-768x432.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi03.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u6607\u964d\u306e\u30b9\u30c8\u30c3\u30d7\u306b\u4f7f\u7528\u3059\u308b\u30b9\u30a4\u30c3\u30c1<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi04-1-1024x576.jpg\" alt=\"\" class=\"wp-image-322\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi04-1-1024x576.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi04-1-300x169.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi04-1-768x432.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/punchi04-1.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u30b3\u30f3\u30d9\u30a2\u30fc\u306e\u99c6\u52d5\u958b\u59cb\u7528\u306e\u30b9\u30a4\u30c3\u30c1<\/figcaption><\/figure>\n\n\n\n<p class=\"has-large-font-size\">\u30a4\u30e1\u30fc\u30b8\u304c\u3057\u3084\u3059\u3044\u69d8\u306b\u5148\u306b\u5b8c\u6210\u3057\u305f\u52d5\u4f5c\u3092\uff01<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/twitter.com\/inFT37207295\/status\/1437569749181894661\n<\/div><figcaption>\u30ec\u30dc\u30d1\u30a4\u3092\u4f7f\u3063\u305f\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u306e\u52d5\u4f5c<\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-image is-style-default\"><figure class=\"alignright size-large is-resized\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-1024x576.png\" alt=\"\" class=\"wp-image-299\" width=\"432\" height=\"242\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-1024x576.png 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-300x169.png 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-768x432.png 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2.png 1280w\" sizes=\"(max-width: 432px) 100vw, 432px\" \/><\/figure><\/div>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"height:49px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group is-style-default is-layout-flow\"><div class=\"wp-block-group__inner-container\">\n<h3 class=\"wp-block-heading\" style=\"font-size:50px\"><strong><span style=\"background:linear-gradient(to bottom, rgba(128,255,255,0) 90%, #19baff 90%);\"><strong><span style=\"color:#19baff\" class=\"has-inline-color\">\u30d7<\/span>\u30ed\u30b0\u30e9\u30e0\u3092\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u7528\u306b\u5909\u66f4<\/strong><\/span><\/strong><\/h3>\n\n\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B08124JY1Q&amp;linkId=20f4dd97bf81d18781f8c8524f43c1cd&amp;bc1=ffffff&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B01N4R1G5B&amp;linkId=43fa685f93808a8fb2a3693ebd7f6418&amp;bc1=ffffff&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B08CMVFGP7&amp;linkId=e5c610625caba0653dc11cd4767c3f98&amp;bc1=ffffff&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=affiliate1087-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS1=1&amp;detail=1&amp;asins=B0136JJX3G&amp;linkId=7d05edfbb175bf0d98b2fb0f36036019&amp;bc1=ffffff&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\">\n    <\/iframe>\n\n\n\n\n<p class=\"has-large-font-size\">\u3044\u3088\u3044\u3088\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u3092\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3067\u52d5\u304b\u3057\u307e\u3059\uff01<\/p>\n\n\n\n<p class=\"has-large-font-size\">\u4eca\u56de\u306f\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u306e\u5165\u529b\u30fb\u51fa\u529b\u306b\u5408\u308f\u305b\u3066<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong><span style=\"color:#ff0b0f\" class=\"has-inline-color\">\u5165\u529b<\/span><\/strong> \u00d77  <span class=\"has-inline-color has-black-color\"> <\/span><strong><span style=\"color:#8cc9ff\" class=\"has-inline-color\">\u51fa\u529b<\/span><\/strong> \u00d77\u3000\u3000\u3068\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30d1\u30fc\u30c8\uff11\u3068\u540c\u69d8\u306b\uff11\uff5e7\u307e\u3067\u306e<span style=\"color:#ff0b0f\" class=\"has-inline-color\"><strong>\u5165\u529b<\/strong><\/span>\u30fb<strong><span style=\"color:#8cc9ff\" class=\"has-inline-color\">\u51fa\u529b<\/span><\/strong>\u306b\u5bfe\u5fdc\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<code>\n<ol start=\"1\" style=\"list-style:decimal-leading-zero outside;in-left:0;padding-left:36px;margin:0;background-color:#EEF;color:#000;\">\n<li style=\"background-color:#EFF;\">#include &lt;piControlIf.h&gt;<\/li>\n<li style=\"background-color:#EEF;\">#include &lt;piControl.h&gt;<\/li>\n<li style=\"background-color:#EFF;\">#include &lt;string.h&gt;<\/li>\n<li style=\"background-color:#EEF;\">#include &lt;stdio.h&gt;<\/li>\n<li style=\"background-color:#EFF;\">#include &lt;unistd.h&gt;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/ ===  1 ===<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput  = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/ ===  2 ===<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i2 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue2 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput2  = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput2 = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn2  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut2 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn2   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut2  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/===  3  ===<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i3 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue3 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput3  = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput3 = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn3  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut3 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn3   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut3  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/ === 4  ===<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i4 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue4 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput4  = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput4 = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn4  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut4 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn4   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut4  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/ === 5 ===<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i5 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue5 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput5  = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput5 = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn5  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut5 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn5   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut5  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/=== 6 ===<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i6 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue6 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput6  = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput6 = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn6  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut6 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn6   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut6  = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/ === 7 ===<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  i7 = 0;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;int  iLastInputValue7 = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchInput7  = NULL;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;char *pchOutput7 = NULL;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable information: Name, Offset, Bit, Length<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableIn7  = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIVariable spiVariableOut7 = {<font style=\"color:brown;\">\"\"<\/font>, 0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ structures containing variable value: Offset, Bit, Value<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueIn7   = {0, 0, 0};<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;SPIValue sValueOut7  = {0, 0, 0};<\/li>\n<\/ol><\/code>\n\n\n\n<p class=\"has-large-font-size\">\u305d\u3057\u3066\u6b21\u306b\u305d\u308c\u305e\u308c\u306e\u95a2\u6570\u306e\u4f5c\u6210\u3068\u30d7\u30ed\u30c8\u30bf\u30a4\u30d7\u5ba3\u8a00\u3092\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<code>\n<ol start=\"1\" style=\"list-style:decimal-leading-zero outside;in-left:0;padding-left:36px;margin:0;background-color:#EEF;color:#000;\">\n<li style=\"background-color:#EFF;\">int IO_1(void);<\/li>\n<li style=\"background-color:#EEF;\">int IO_2(void);<\/li>\n<li style=\"background-color:#EFF;\">int IO_3(void);<\/li>\n<li style=\"background-color:#EEF;\">int IO_4(void);<\/li>\n<li style=\"background-color:#EFF;\">int IO_5(void);<\/li>\n<li style=\"background-color:#EEF;\">int IO_6(void);<\/li>\n<li style=\"background-color:#EFF;\">int IO_7(void);<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 1 ---<\/font><\/li>\n<li style=\"background-color:#EFF;\">int IO_1(void) {<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i5 = piControlGetBitValue(&amp;sValueIn5);   <font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue5 != sValueIn5.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput, sValueIn.i8uValue)<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == iLastInputValue5)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut.i8uValue = ~sValueOut.i8uValue;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i5 = piControlSetBitValue(&amp;sValueOut);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput, sValueOut.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i5)<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i5);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue5 = sValueIn5.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;return 0;<\/li>\n<li style=\"background-color:#EEF;\">}<\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 2 ---<\/font><\/li>\n<li style=\"background-color:#EEF;\">int IO_2(void) {<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlGetBitValue(&amp;sValueIn2);  <font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue2 != sValueIn2.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput2, sValueIn2.i8uValue);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == sValueIn2.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button is released<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(1 == iLastInputValue2)&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut.i8uValue = ~sValueOut.i8uValue;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlSetBitValue(&amp;sValueOut);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput,sValueOut.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep(0.1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlGetBitValue(&amp;sValueIn2);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue2 != sValueIn2.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == sValueIn2.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button is released<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput, sValueIn2.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(1 == iLastInputValue2)&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut3.i8uValue = ~sValueOut3.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pi<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlSetBitValue(&amp;sValueOut3);<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput3, sValueOut3.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i2)<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i2);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_4();<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue2 = sValueIn2.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/printf(\"=== OK 2 ====\");<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 3---<\/font><\/li>\n<li style=\"background-color:#EFF;\">int IO_3(void) {<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlGetBitValue(&amp;sValueIn3);&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue3 != sValueIn3.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput3, sValueIn3.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == iLastInputValue3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut4.i8uValue = ~sValueOut4.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlSetBitValue(&amp;sValueOut4);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput4, sValueOut4.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep(0.5);&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/  -----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlGetBitValue(&amp;sValueIn3);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue3 != sValueIn3.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput2, sValueIn2.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == iLastInputValue3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut2.i8uValue = ~sValueOut2.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlSetBitValue(&amp;sValueOut2);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput2, sValueOut2.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i3)<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i3);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue4 = sValueIn4.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue3 = sValueIn3.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_5();<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/printf(\"=== OK 2 ====\");<\/font><\/li>\n<li style=\"background-color:#EEF;\">return 0;<\/li>\n<li style=\"background-color:#EFF;\">}<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/  ---  4  ---<\/font><\/li>\n<li style=\"background-color:#EFF;\">int IO_4(void) {<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlGetBitValue(&amp;sValueIn4);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue4 != sValueIn4.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput4, sValueIn4.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == iLastInputValue4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut3.i8uValue = ~sValueOut3.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlSetBitValue(&amp;sValueOut3);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput3, sValueOut3.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep(0.1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlGetBitValue(&amp;sValueIn4);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue4 != sValueIn4.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput4, sValueIn4.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == iLastInputValue4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut4.i8uValue = ~sValueOut4.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlSetBitValue(&amp;sValueOut4);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput4, sValueOut4.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i4)<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i4);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_3();<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue4 = sValueIn4.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EFF;\">return 0;<\/li>\n<li style=\"background-color:#EEF;\">}<\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 5---<\/font><\/li>\n<li style=\"background-color:#EEF;\">int IO_5(void) {<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = piControlGetBitValue(&amp;sValueIn);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetBitValue() returned %d\\n\"<\/font>, i);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue != sValueIn.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput, sValueIn.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == sValueIn.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button is released<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(1 == iLastInputValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut2.i8uValue = ~sValueOut2.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = piControlSetBitValue(&amp;sValueOut2);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput2, sValueOut2.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i2)<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i2);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue = sValueIn.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EFF;\">}<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 6 ---<\/font><\/li>\n<li style=\"background-color:#EEF;\">int IO_6(void) {<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i6 = piControlGetBitValue(&amp;sValueIn6);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i6)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetBitValue() returned %d\\n\"<\/font>, i6);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue6 != sValueIn6.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput6, sValueIn6.i8uValue);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == sValueIn6.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button is released<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(1 == iLastInputValue6)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut6.i8uValue = ~sValueOut6.i8uValue;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i6 = piControlSetBitValue(&amp;sValueOut6);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput6, sValueOut6.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i6)<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i6);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue6 = sValueIn6.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value<\/font><\/li>\n<li style=\"background-color:#EFF;\">}<\/li>\n<li style=\"background-color:#EEF;\"><font style=\"color:green;font-style:italic;\">\/\/  --- 7 ---<\/font><\/li>\n<li style=\"background-color:#EFF;\">int IO_7(void) {<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i7 = piControlGetBitValue(&amp;sValueIn7);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - read input pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i7)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetBitValue() returned %d\\n\"<\/font>, i7);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(iLastInputValue7 != sValueIn7.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button state changed<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ show the change<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %d \\n\"<\/font>, pchInput7, sValueIn7.i8uValue);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 == sValueIn7.i8uValue)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ if button is released<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(1 == iLastInputValue7)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ and was pressed before<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ switch light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sValueOut7.i8uValue = ~sValueOut7.i8uValue;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - set output pin<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i7 = piControlSetBitValue(&amp;sValueOut7);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%-32s : %s \\n\"<\/font>, pchOutput7, sValueOut7.i8uValue ? <font style=\"color:brown;\">\"On\"<\/font> : <font style=\"color:brown;\">\"Off\"<\/font>);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i7)<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlSetBitValue() returned %d\\n\"<\/font>, i7);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iLastInputValue7 = sValueIn7.i8uValue;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ remember last input value&nbsp;&nbsp;&nbsp;&nbsp;<\/font><\/li>\n<li style=\"background-color:#EEF;\">}<\/li>\n<\/ol><\/code>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-image is-style-default\"><figure class=\"alignleft size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"244\" height=\"258\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/08\/Block_01-1.png\" alt=\"\" class=\"wp-image-166\"\/><\/figure><\/div>\n\n\n\n<div style=\"height:43px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"has-large-font-size\">\u4ee5\u4e0b\u306f\u30e1\u30a4\u30f3\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u3059\u3002<\/p>\n\n\n\n<code>\n<ol start=\"1\" style=\"list-style:decimal-leading-zero outside;in-left:0;padding-left:36px;margin:0;background-color:#EEF;color:#000;\">\n<li style=\"background-color:#EFF;\">int main(int argc, char ** argv)<\/li>\n<li style=\"background-color:#EEF;\">{&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput  = argv[1];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput = argv[2];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput2  = argv[3];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput2 = argv[4];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput3  = argv[5];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput3 = argv[6];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput4  = argv[7];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput4 = argv[8];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput5  = argv[9];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput5 = argv[10];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput6  = argv[11];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput6 = argv[12];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchInput7  = argv[13];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory input pin for Switch<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;pchOutput7 = argv[14];&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiCtory output pin for Light<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn.strVarName,  pchInput,  sizeof(spiVariableIn.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut.strVarName, pchOutput, sizeof(spiVariableOut.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn2.strVarName,  pchInput2,  sizeof(spiVariableIn2.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut2.strVarName, pchOutput2, sizeof(spiVariableOut2.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn3.strVarName,  pchInput3,  sizeof(spiVariableIn3.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut3.strVarName, pchOutput3, sizeof(spiVariableOut3.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn4.strVarName,  pchInput4,  sizeof(spiVariableIn4.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut4.strVarName, pchOutput4, sizeof(spiVariableOut4.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn5.strVarName,  pchInput5,  sizeof(spiVariableIn5.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut5.strVarName, pchOutput5, sizeof(spiVariableOut5.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn6.strVarName,  pchInput6,  sizeof(spiVariableIn6.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut6.strVarName, pchOutput6, sizeof(spiVariableOut6.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableIn7.strVarName,  pchInput7,  sizeof(spiVariableIn7.strVarName));<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;strncpy(spiVariableOut7.strVarName, pchOutput7, sizeof(spiVariableOut7.strVarName));&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;i = piControlGetVariableInfo(&amp;spiVariableIn);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i, spiVariableIn.strVarName);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlGetVariableInfo(&amp;spiVariableIn2);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2, spiVariableIn2.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlGetVariableInfo(&amp;spiVariableIn3);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3, spiVariableIn3.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlGetVariableInfo(&amp;spiVariableIn4);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4, spiVariableIn4.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i5 = piControlGetVariableInfo(&amp;spiVariableIn5);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i5)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i5, spiVariableIn5.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i6 = piControlGetVariableInfo(&amp;spiVariableIn6);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i6)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i6, spiVariableIn6.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;i7 = piControlGetVariableInfo(&amp;spiVariableIn7);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i7)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i7, spiVariableIn7.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ =============================<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;i = piControlGetVariableInfo(&amp;spiVariableOut);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i, spiVariableOut.strVarName);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i2 = piControlGetVariableInfo(&amp;spiVariableOut2);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i2, spiVariableOut2.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;i3 = piControlGetVariableInfo(&amp;spiVariableOut3);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i3, spiVariableOut3.strVarName);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;i4 = piControlGetVariableInfo(&amp;spiVariableOut4);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i4, spiVariableOut4.strVarName);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i5 = piControlGetVariableInfo(&amp;spiVariableOut5);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i5)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i5, spiVariableOut.strVarName);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i6 = piControlGetVariableInfo(&amp;spiVariableOut6);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i6)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i6, spiVariableOut.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;i7 = piControlGetVariableInfo(&amp;spiVariableOut7);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ PiBridge - get variable info<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;if(0 != i7)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ handle error<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fprintf(stderr, <font style=\"color:brown;\">\"Error: piControlGetVariableInfo() returned %d for variable '%s' \\n\"<\/font>,<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i7, spiVariableOut.strVarName);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/  =============================<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn.i16uAddress  = spiVariableIn.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn.i8uBit       = spiVariableIn.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut.i16uAddress = spiVariableOut.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut.i8uBit      = spiVariableOut.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/  ---------------  2<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn2.i16uAddress  = spiVariableIn2.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn2.i8uBit       = spiVariableIn2.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn2.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut2.i16uAddress = spiVariableOut2.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut2.i8uBit      = spiVariableOut2.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut2.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ -----------------   3<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn3.i16uAddress  = spiVariableIn3.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn3.i8uBit       = spiVariableIn3.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn3.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut3.i16uAddress = spiVariableOut3.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut3.i8uBit      = spiVariableOut3.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut3.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/    -------------------  4<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn4.i16uAddress  = spiVariableIn4.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn4.i8uBit       = spiVariableIn4.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn4.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut4.i16uAddress = spiVariableOut4.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut4.i8uBit      = spiVariableOut4.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut4.i8uValue    = 0; <\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/    -------------------  5<\/font><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn5.i16uAddress  = spiVariableIn5.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn5.i8uBit       = spiVariableIn5.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn5.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut5.i16uAddress = spiVariableOut5.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut5.i8uBit      = spiVariableOut5.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut5.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/    -------------------  6<\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn6.i16uAddress  = spiVariableIn6.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn6.i8uBit       = spiVariableIn6.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn6.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EEF;\"><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut6.i16uAddress = spiVariableOut6.i16uAddress;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut6.i8uBit      = spiVariableOut6.i8uBit;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut6.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/    -------------------  7<\/font><\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn7.i16uAddress  = spiVariableIn7.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn7.i8uBit       = spiVariableIn7.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueIn7.i8uValue     = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut7.i16uAddress = spiVariableOut7.i16uAddress;<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut7.i8uBit      = spiVariableOut7.i8uBit;<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;sValueOut7.i8uValue    = 0;<\/li>\n<li style=\"background-color:#EFF;\"><\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;<font style=\"color:green;font-style:italic;\">\/\/ -----------------   <\/font><\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[0], pchInput);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[1], pchInput2);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[2], pchInput3);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[3], pchInput4);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[4], pchInput5);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\"<\/font>, argv[5], pchInput6);<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;printf(<font style=\"color:brown;\">\"%s is running waiting for switch '%s' \\n\\n\\n\"<\/font>, argv[6], pchInput7);<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;while(1)<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;{<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_1();<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_2();<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_3();<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_4();<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_5();<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_6();<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IO_7();<\/li>\n<li style=\"background-color:#EFF;\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/li>\n<li style=\"background-color:#EEF;\">&nbsp;&nbsp;&nbsp;&nbsp;return 0;<\/li>\n<li style=\"background-color:#EFF;\">}<\/li>\n<\/ol><\/code>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-image is-style-default\"><figure class=\"alignright size-large is-resized\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-1024x576.png\" alt=\"\" class=\"wp-image-299\" width=\"468\" height=\"263\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-1024x576.png 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-300x169.png 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2-768x432.png 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u540d\u79f0\u672a\u8a2d\u5b9a-2.png 1280w\" sizes=\"(max-width: 468px) 100vw, 468px\" \/><\/figure><\/div>\n\n\n\n<div style=\"height:49px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group is-style-default is-layout-flow\"><div class=\"wp-block-group__inner-container\">\n<h3 class=\"wp-block-heading\" style=\"font-size:50px\"><strong><span style=\"background:linear-gradient(to bottom, rgba(128,255,255,0) 90%, #8cc9ff 90%);\"><strong><span style=\"color:#8cc9ff\" class=\"has-inline-color\">\u30b3<\/span><\/strong>\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u304b\u3089\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u5b9f\u884c<\/span><\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"800\" height=\"600\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/08\/revopi09.jpg\" alt=\"\" class=\"wp-image-79\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/08\/revopi09.jpg 800w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/08\/revopi09-300x225.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/08\/revopi09-768x576.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u753b\u9762\u304b\u3089\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"197\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb01-1024x197.jpg\" alt=\"\" class=\"wp-image-286\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb01-1024x197.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb01-300x58.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb01-768x148.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb01.jpg 1094w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>demo\u30d5\u30a9\u30eb\u30c0\u3078\u79fb\u52d5<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd demo<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"197\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb02-1024x197.jpg\" alt=\"\" class=\"wp-image-287\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb02-1024x197.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb02-300x58.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb02-768x148.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb02.jpg 1094w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>piTest.c \u3092\u30b3\u30f3\u30d1\u30a4\u30eb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>make<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"197\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb03-1024x197.jpg\" alt=\"\" class=\"wp-image-288\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb03-1024x197.jpg 1024w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb03-300x58.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb03-768x148.jpg 768w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/\u30bf\u30fc\u30df\u30ca\u30eb03.jpg 1094w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3057\u307e\u3059\uff01<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/piTest I_1 O_1 I_2 O_2 I_3 O_3 I_4 O_4 I_5 O_5 I_6 O_6 I_7 O_7\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img decoding=\"async\" loading=\"lazy\" width=\"786\" height=\"460\" src=\"http:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img001.jpg\" alt=\"\" class=\"wp-image-324\" srcset=\"https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img001.jpg 786w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img001-300x176.jpg 300w, https:\/\/fischertechnik-education.jp\/blog\/wp-content\/uploads\/2021\/09\/img001-768x449.jpg 768w\" sizes=\"(max-width: 786px) 100vw, 786px\" \/><figcaption>\u5b9f\u884c\u6642\u306e\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3<\/figcaption><\/figure>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/twitter.com\/inFT37207295\/status\/1438057437991292929\n<\/div><figcaption>\u5b8c\u6210\u30d7\u30ed\u30b0\u30e9\u30e0\u5b9f\u884c\u52d5\u753b\u306e\u30c4\u30a4\u30fc\u30c8<\/figcaption><\/figure>\n\n\n\n<p class=\"has-large-font-size\">\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u3092\u30ec\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u30d1\u30a4\u3067\u52d5\u4f5c\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3057\u305f\uff01<\/p>\n\n\n\n<p class=\"has-large-font-size\">\u3054\u89a7\u3044\u305f\u3060\u304d\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3057\u305f\uff01<\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:110px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group is-style-twentytwentyone-border has-dark-gray-color has-blue-background-color has-text-color has-background is-layout-flow\"><div class=\"wp-block-group__inner-container\">\n<h2 class=\"has-text-align-center has-extra-large-font-size wp-block-heading\"><strong><span class=\"has-inline-color has-white-color\">SNS<\/span><\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-social-links has-huge-icon-size items-justified-space-between is-style-logos-only is-layout-flex\"><li class=\"wp-social-link wp-social-link-twitter wp-block-social-link\"><a rel=\" noopener nofollow\" target=\"_blank\" href=\"https:\/\/twitter.com\/inFT37207295\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Twitter<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-youtube wp-block-social-link\"><a rel=\" noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.youtube.com\/channel\/UCwABIbuVNGbEdBQZ2Fj9Weg\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">YouTube<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-instagram wp-block-social-link\"><a rel=\" noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.instagram.com\/education_stem_1965\/\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Instagram<\/span><\/a><\/li><\/ul>\n<\/div><\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u3092\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3067\u52d5\u304b\u3059\uff01 \u3069\u3046\u52d5\u304b\u3059\u304b \u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3\u306e\u8a73\u3057\u3044\u8aac\u660e\u306fYoutube\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\uff01 \u307e\u305a\u3001\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3059\u308b\u524d\u306b\u52d5\u4f5c\u306e\u6d41\u308c\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002 \uff11. \u30b9\u30a4\u30c3\u30c1\u3092\u62bc\u3059\u3068\u30b3\u30f3\u30d9\u30a2\u30fc\u304c\u6b63\u8ee2\u99c6\u52d5 \uff12&hellip; <a class=\"more-link\" href=\"https:\/\/fischertechnik-education.jp\/blog\/2021\/09\/27\/revolutionpi-fischertechnik-punching-machine-part2\/\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"screen-reader-text\">RevolutionPi &#038; fischertechnik \u30d1\u30f3\u30c1\u30f3\u30b0\u30de\u30b7\u30f3 \u30d1\u30fc\u30c82<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":304,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/posts\/302"}],"collection":[{"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/comments?post=302"}],"version-history":[{"count":12,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/posts\/302\/revisions"}],"predecessor-version":[{"id":348,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/posts\/302\/revisions\/348"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/media\/304"}],"wp:attachment":[{"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/media?parent=302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/categories?post=302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fischertechnik-education.jp\/blog\/wp-json\/wp\/v2\/tags?post=302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}