Global variables should only be used for truly global state. Using a global variable to represent something like e.g. the latitude of the northern boundary of the map will only work if there can only ever be one "northern boundary of the map". If in future the code might have to work with multiple maps that have different northern boundaries, code which uses a global variable for the northern boundary will likely need to be reworked.
In typical computer applications, there's often no particular reason to assume there will never be more than one of something. In embedded systems, however, such assumptions are often far more reasonable. While it's possible that a typical computer program might be called upon to support multiple simultaneous users, the user interface of a typical embedded system will be designed for operation by a single user interacting with its buttons and display. As such, it will at any moment in time have a single user-interface state. Designing the system so that multiple users could interact with multiple keyboards and displays would require a lot more complexity, and take much longer to implement, than designing it for a single user. If the system is never called upon to support multiple users, any extra effort invested to facilitate such usage will be wasted. Unless it's likely that multi-user support will be required, it would likely be wiser to risk having to discard the code used for a single-user interface in the event that multi-user support is required, than to spend extra time adding multi-user support which will likely never be needed.
A related factor with embedded systems is that in many cases (especially involving user interfaces), the only practical way to support having more than one of something would be to use multiple threads. In the absence of some other need for multi-threading, it's likely better to use a simple single-threaded design than increase the system complexity with multi-threading that is likely never to really be necessary. If adding more than one of something would require a huge system redesign anyway, it won't matter if it also requires reworking the use of some global variables.