"# VisualHMI \u5c4f\u5e55\u65cb\u8f6c\uff1aset_lcd_rotate \u4e0e\u591a\u65b9\u5411 bin\n\n> 2026-08-04 | 2026-08-04\n> http:\/\/www.modbus.cn\/en\/51601.html\n\n**\u4e32\u53e3\u5c4f\/HMI \u5f00\u53d1, \u5176\u4ed6\u6280\u672f\u8d44\u6599**\n\n---\n\n\u8fd0\u884c\u671f\u6574\u4f53\u65cb\u8f6c UI\uff080\u00b0\/90\u00b0\/180\u00b0\/270\u00b0\uff09\uff0c\u624b\u6301\u5668\u3001\u7ad6\u88c5\u673a\u67dc\u90fd\u9002\u7528\u3002\u4e00\u5957 Lua \u9002\u914d\u6240\u6709\u59ff\u6001\uff0cDX \u7cfb\u5217\u4e13\u5c5e\u3002\n\n## 1. Lua \u63a7\u5236\u65cb\u8f6c\n\n```\nset_lcd_rotate(angle)  -- angle: 0~3 (0=0\u00b0,1=90\u00b0,2=180\u00b0,3=270\u00b0)\n\nfunction on_init()\n  local angle = get_uint16(VT_RW, 0x0001)  -- \u4eceFlash\u8bfb\u65cb\u8f6c\u65b9\u5411\n  angle = (angle &lt; 0 or angle &gt; 3) and 0 or angle\n  set_lcd_rotate(angle)\n  set_uint16(VT_LW, 0x8888, angle)\nend\n\nfunction on_update(slave,vtype,addr)\n  if vtype == VT_LW and addr == 0x8888 then\n    local val = get_uint16(VT_LW, 0x8888)\n    set_uint16(VT_RW, 0x0001, val)  -- \u5b58\u65cb\u8f6c\u65b9\u5411\n    set_lcd_rotate(val)\n  end\nend\n```\n\n## 2. \u751f\u6210\u591a\u65b9\u5411\u6587\u4ef6\n\n\u6a2a\u5c4f\u5de5\u7a0b\uff080\u00b0\/180\u00b0\uff09\u7f16\u8bd1\u4e24\u6b21\uff1a0\u00b0 \u4fdd\u7559\u9ed8\u8ba4 image.bin\/project.bin\uff1b180\u00b0 \u91cd\u547d\u540d\u4e3a image180.bin\/project180.bin \u653e\u8fdb private\u3002\u7ad6\u5c4f\u5de5\u7a0b\uff0890\u00b0\/270\u00b0\uff09\u540c\u7406\u751f\u6210 image90\/image270 \u653e\u5165 private\u3002private \u76ee\u5f55\u6700\u7ec8\u542b 8 \u4e2a\u6838\u5fc3\u6587\u4ef6\uff0c\u542f\u52a8\u65f6\u9ed8\u8ba4\u52a0\u8f7d 0\u00b0\uff0c\u8fd0\u884c\u65f6\u5207\u65b9\u5411\u81ea\u52a8\u52a0\u8f7d\u5bf9\u5e94 bin\u3002\n\n\u5c4f\u5e55\u65cb\u8f6c\u6ce8\u610f\uff1a**\u6a2a\u5c4f\u548c\u7ad6\u5c4f\u7684 Lua \u811a\u672c\u903b\u8f91\u5b8c\u5168\u4e00\u81f4**\uff0c\u5dee\u5f02\u53ea\u5728\u7f16\u8bd1\u51fa\u7684 bin \u6587\u4ef6\uff08imageXXX.bin\/projectXXX.bin\uff09\u3002\u5f00\u53d1\u8005\u53ea\u7ef4\u62a4\u4e00\u5957\u5de5\u7a0b\uff0c\u6309\u65b9\u5411\u7f16\u8bd1\u56db\u6b21\u547d\u540d\u597d\u4e22\u8fdb private \u5373\u53ef\u3002DX \u7cfb\u5217\u4e13\u5c5e\u3002\n\n\u6574\u7406\u81ea \u5e7f\u5dde\u5927\u5f69\u79d1\u6280 VisualHMI \u5f00\u53d1\u6587\u6863\uff08hmi-doc.gz-dc.com\uff09\u5176\u4ed6\u6280\u672f\u6559\u7a0b\u300c\u5c4f\u5e55\u65cb\u8f6c\u300d\uff0c\u7248\u6743\u5f52\u5927\u5f69\u79d1\u6280\u6240\u6709\u3002\n\n---\n*modbus.cn*\n"